2

我正在尝试基于 CI 在 WPF 应用程序上运行 UI 测试(使用 Windows 自动化 API)。我已将我的解决方案与 .testsettings 文件相关联,并将我的测试 .dll 链接到构建过程。一切似乎都很好。

当我对新构建进行排队时,在 TFS 的构建日志中,我可以在构建机器上看到传递给 MSTest (2010) 的命令行参数 - 似乎 .testsettings 文件已正确加载,并且正确的测试 .dll 已传递给 MSTest 。可执行程序。

但是,它似乎在Executing tests消息之后“卡住”了 - 无论是在运行构建时还是直接通过构建机器运行它时。此外,我在 .testsettings 文件中指定了在测试之前运行的启动脚本(它在本地复制应用程序的二进制文件,以便测试可以启动应用程序并运行适用的测试)。这个脚本似乎没有被执行(文件应该被复制到的目录是空的)。

有没有人遇到过类似的问题并知道如何处理?

4

1 回答 1

4

正如 Mike 在评论中所说,这个问题实际上是 VS 2010 中的一个错误,如果您并排安装了 VS 2012,则无法通过 2010 IDE 运行测试。不幸的是,我无法在构建机器上安装 VS 2010 SP1,但也可以通过将/noisolation参数添加到标准命令行语法来解决问题(这通过 MSTest 过程运行测试,这以某种方式解决了问题) .

但是,由于您无法通过 TFS 的集成自动化测试功能定义要传递给 MSTest 的其他参数,因此我编写了自己的应用程序,该应用程序作为计划任务调用、运行测试并发送包含 HTML 报告的电子邮件(我为此使用了trx2html - - 请注意,如果您使用的是 VS2012,则需要 beta 0.7 版本,因为自 VS 2010 以来 .trx 格式发生了变化)。

于 2013-08-10T09:55:35.113 回答