将Selenium Server和ChromeDriver作为Windows服务运行
所以我们可以执行从前到后的Web UI测试,我们使用Selenium和ChromeDriver自动化页面加载/交互作为我们测试包的一部分.
这在开发人员测试期间(在开发人员的本地计算机上)的行为正常,但是我们正在努力执行这些检查,作为我们持续集成构建的一部分. 我们的服务器厂是* NIX,我们所有的CI基础设施都运行在这些机器上.所以我们可以在Windows下测试Chrome(我们的交付机制),我们已经配置了一个Selenium Grid.当CI测试运行时,他们访问网格,以便找到运行测试的Windows节点. 我们已经安装了Windows桌面,仅用于运行这些测试.这包含我们的Windows 7的标准企业版本.该机器将定期与IT部门的更新策略重新启动. 为了确保Selenium服务器始终运行,我们添加了Selenium服务器(以“节点”模式运行)作为Windows服务.硒服务器配置为启动ChromeDriver以调用模拟的用户交互. 但是,当从CI运行测试时,它们由于超时而失败.我们的工作理论是,正在运行服务的系统用户无法创建交互式窗口.网络搜索提到了“会话0”问题,但对于如何向前推进几乎没有甚至没有建设性的建议. 从交互式会话手动启动Selenium服务器进程不是一个可行的解决方案,因为这导致了脆弱的测试 – 这是由于基础设施问题而不是真正的测试回归而失败的. 当系统重新启动时,我们如何能够通过Windows服务器启动Selenium Server的实例,这样才能启动Chrome实例?
可以轻松完成
NSSM.
服务的安装如下所示: nssm install seleniumhub java -jar C:seleniumselenium-server-standalone-2.45.0.jar -role hub -hubConfig C:seleniumhub.json nssm install seleniumnode java -jar C:seleniumselenium-server-standalone-2.45.0.jar -role node -nodeConfig C:seleniumnode.json 如果需要,它可以轻松地删除服务: nssm remove seleniumnode confirm 将目的地添加到nssm到您的PATH变量,并从控制台以admin身份运行 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- .net – 版本控制Windows COM对象
- windows – 在不同进程之间共享HDC
- Windows – SSH RC4密码:究竟有什么风险?
- windows – 企业Samba文件服务器管理
- windows-server-2008 – 计算打印总数
- windows-server-2003 – 为什么我的服务器每五分钟通过PC扬
- windows-server-2008 – 对于使用SQL Express 2008的Window
- windows – 如何执行* .dll文件
- windows-phone-7 – 禁用Windows Phone中scrollviewer的垂直
- windows-phone-7 – 适用于Windows Phone 7的WatermarkedTe