continuous-integration - 如何运行 White + Teamcity(Winforms 应用程序)

标签 continuous-integration teamcity ui-automation white-framework

我正在尝试运行 UI 测试(使用白色编写)。当我使用 NUnitConsole 运行它们时,一切正常。当我尝试使用 TeamCity 运行它们时,出现以下异常 Test(s) failed。 White.Core.UIItems.UIActionException:在等待 5000 毫秒后,无法在进程 4132 中找到标题为 Form1 的窗口。可能出了什么问题?我该怎么做才能通过测试?

最佳答案

不仅构建代理需要设置为与桌面交互,而且桌面必须显示以便 UI 自动化工作 - 桌面不能被锁定并且屏幕保护程序不能运行。你的代理在 headless 机器上吗?如果您使用 RDP 连接到代理来检查事情,当您关闭 RDP 时,它会锁定桌面。在这种情况下,自动化将失败。不要使用 RDP,而是使用 VNC 查看器登录到盒子,而不是 RDP,因为当您关闭桌面时 VNC 不会锁定它。

另一个需要考虑的问题是网络访问。如果您将 TC 代理作为可访问桌面的服务运行,那么它将在无法访问网络共享等的服务帐户下运行...如果这是一个问题,那么您将无法运行 TC代理作为服务,而是需要使用域用户登录并启动 agent.bat 文件以启动代理。

关于continuous-integration - 如何运行 White + Teamcity(Winforms 应用程序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5907538/

相关文章:

continuous-integration - 在 hudson/jenkins 中加入了 "Build other projects"的控制台输出

teamcity - 如何防止为个人构建运行构建步骤

javascript - 当已使用 CasperJS 选择元素时断言 css 类存在

svn - 使用 NAnt 和 Ivy 构建 VB6 项目

python - 使用Python在Hudson中配置 "execute shell"脚本

silverlight - 使用 StatLight 和 TeamCity 自动化 silverlight 单元测试

java - 如何制作包含内部版本号的 TeamCity 工件?

android - 通过 Android API <= 23 上的 Appium 功能更改语言

c# - UI 自动化 - 为另一个应用程序的 TextBox 设置文本

具有构建功能和源代码控制的 Asp.net 托管提供商