使用Windows发布管理的Selenium

时间:2017-01-17 06:06:02

标签: windows selenium batch-file ms-release-management

在Microsoft Release Management 2013中,在Powershell Executor步骤中,我们配置了一个步骤来触发Windows批处理文件。此批处理文件将在不同的服务器上执行,这也是我们的App Server。作为实验,我们有一个简单的测试用例来打开IE,访问Google主页URL并关闭浏览器,还会捕获截图。当我们从RM运行作业时,Selenium日志表示浏览器已启动且测试成功。但是当我们检查屏幕截图时,它只是一个黑屏。所有这些都作为Windows服务帐户用户运行,该用户与运行RM的用户相同。该用户没有登录权限。

如果我使用自己的ID登录App服务器并手动执行批处理文件,则会正确捕获屏幕截图。 我已经阅读了几个关于黑屏的在线帖子。人们说截图是黑色的,因为屏幕被锁定了。这是否意味着必须使用其他凭据而不是服务帐户执行RM Powershell执行程序步骤?如果是,我们该怎么做?在一些建议中提到安装VNC。在这种情况下这是相关的吗?

我对Windows很新。我大部分时间都在Linux系统中工作,我被要求在这里调试这个问题。任何指针/指导将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:0)

部署代理不作为交互式服务运行。你直接调用Selenium测试会遇到很多麻烦。几年前我写了一篇blog post来展示我是如何完成它的。基本上,您使用Selenium hub从代理计算机以交互方式执行测试。

答案 1 :(得分:0)

我们终于有了这个工作。

我们在批处理脚本中调用了testNG selenium测试。此脚本在Powershell Executor任务中的RM中指定。需要注意的要点是,在Powershell执行器任务中,我们必须首先使用cd(更改目录)命令切换到Selenium脚本所在的目录。然后指定要在同一Powershell执行程序任务中执行的批处理脚本的完整路径。这个cd命令非常重要。如果没有这个,批处理脚本将被执行但是内部的硒步骤将无法工作。你只会得到一个模糊的配置错误:1"在最后的输出中。

我们使用AutoIT for IE浏览器负责网站身份验证。