【发布时间】:2018-07-17 13:37:57
【问题描述】:
我们正在使用 VSTS 执行持续集成,使用构建模板来将网站部署到开发机器。
这很好,但后来我们想在构建模板中添加 CodedUI 测试,以便在构建步骤中运行测试。
所以我在构建中添加了一个 Visual Studio 测试 步骤,并通过引用与之关联的测试计划和测试套件来添加到测试中。
我确保 codedUI 项目是在与网站相同的解决方案中构建的,以确保二进制文件是使用它构建的。
我遇到的问题是,当构建运行时,它会返回错误,指出它缺少代码工作的相关参考,例如:
- QualityTools.CodedUITestFramework
- QualityTools.Common
- TestTools.UITesting
等等
但是,这些引用包含在项目中,并且“复制本地”设置为 true。
有人知道可能出了什么问题吗?
更新 收到新错误:
MSTestAdapter 未能发现类中的测试 程序集的“Email_Regression.CodedUITest1” 'C:\agent_work\4\s\Microservices\Email\Email 回归\obj\Release\Email Regression.dll'。原因无法加载 文件或程序集 'Microsoft.VisualStudio.QualityTools.CodedUITestFramework, 版本=15.0.0.0,文化=中性,PublicKeyToken=b03f5f7f11d50a3a' 或 它的依赖项之一。系统找不到指定的文件..
C:\agent_work\4\s\Microservices\Email\Email 中没有可用的测试 回归\bin\Release\Email Regression.dll C:\agent_work\4\s\Microservices\Email\Email Regression\obj\Release\Email Regression.dll。确保测试 发现者和执行者已注册和平台和框架版本 设置正确,然后重试。
【问题讨论】:
-
您使用私有构建代理吗?详细错误是什么?该计算机上是否安装了 Visual Studio Enterprise 或 Visual Studio 测试代理?如果您在该机器上手动运行 Coded UI 测试,结果如何?
-
是的,它是一个私有构建代理。我们刚刚通过将 dll 添加到项目中的文件夹来解决原始错误。但是,现在运行构建时,在 Test.dll 中找不到测试,因为它找不到 CodedUITestFramework 程序集或 UITesting 程序集。我不确定 Visual Studio Enterprise 是否在代理计算机上,并且我无权尝试手动运行它
-
尝试在测试任务之前添加 Visual Studio 测试平台安装程序任务。
-
我已经添加了它,没有它我还没有尝试过,但我无法想象这会有所作为
-
尝试添加Visual Studio测试代理部署任务,在目标机器上安装测试代理并查看结果。
标签: continuous-integration azure-devops coded-ui-tests