我正在尝试通过 TeamCity 运行一个简单的 Watin 测试,但 Internet Explorer 窗口从未像通常通过 CruiseControl 那样显示。
我收到一个错误,它找不到文本字段,所以有些东西正在运行。但是没有窗户我看不到什么。
我需要对 TeamCity 服务器的设置进行特定更改吗?
在另一个论坛上找到这个
所有学分归马特·贝克所有
供将来尝试使用 TeamCity 自动运行 WatiN 测试的任何人参考。您必须使用\bin\agent.bat start
而不是作为服务来启动构建代理。WatiN 需要完整的 UI 才能正确执行,并且它不会将此环境作为服务。我希望这能让其他人更容易!
在 Teamcity 代理的服务属性窗口 ( services.msc
) 上的帐户选项卡下,选中“允许服务与桌面交互”,这将允许本地服务帐户生成 Internet Explorer。但是您肯定会遇到其他问题,例如 cookie 阻止、密码保存等,因此请以本地服务身份登录并修复这些问题。
最简单的方法是使用psexec
(http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx),调用psexec -i -s cmd.exe
生成一个作为本地帐户运行的 cmd,然后在设置所有内容时启动 Internet Explorer(隐私本地帐户在 IE 中的设置非常高)。
如果您作为服务安装,请确保将其停止并禁用。然后,使用以下内容创建一个 .bat 文件
C:
cd teamcity\buildagent\bin\
agent.bat start
现在只需在您的启动文件夹中创建此批处理文件的快捷方式!
请尝试这个简单的解决方案:转到服务,编辑服务属性,选择登录选项卡,然后选中带有标签的框:“允许服务与桌面交互”。
在竹子里为我工作。
干杯,佩德罗·奥·莫莱罗