我正在尝试通过TeamCity运行一个简单的Watin测试,但是Internet Explorer窗口从未像通过CruiseControl那样显示。
我得到了一个错误提示,它无法找到文本字段,所以某些东西在运行。但是没有窗口我看不到。
我需要对TeamCity服务器的设置进行特定更改吗?
在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隐私设置非常高)。
我在一个其他论坛上发现了这个问题。
所有的功劳归于Matt Baker。
对于任何试图使用TeamCity自动运行WatiN测试的人,在此留作参考。 你必须使用\bin\agent.bat start
来启动你的构建代理,而不是作为服务。 WatiN需要完整的UI才能正确执行,而服务环境无法提供这样的环境。 我希望这能让其他人更容易使用!
C:
cd teamcity\buildagent\bin\
agent.bat start