我正在使用Jenkins在Windows Slave上运行硒测试。 Windows slave具有Windows 2016 OS。对于启动的从属实例,我将ec2插件用于Jenkins,它使用了
用于管理节点的winrm协议。测试执行得很好,但屏幕截图的分辨率约为1024 * 786(我认为)。但是服务器的分辨率为1920 * 1020。如果我在开始测试之前做了rdp CONNECT TO SLAVE SERVER,则屏幕截图将是完整尺寸。我为通过netplwiz使用winrm的用户添加了自动登录。没帮我
我也尝试过:
1.更改为Windows寄存器:DefaultSettings.XResolution,DefaultSettings.YResolution为1902 * 1020;
仅在开始测试之前rdp连接到服务器时帮助我。
UPDATE(12.10.2018):
C:\Users\jenkins>powershell -command "Set-DisplayResolution -Width 1920 -Height 1080 -Force"
setres will now attempt to apply the following display settings:
Width: 1920
Height: 1080
The settings passed in could not be applied to the graphics device.
init script ran successfully
我想说明一下,我使用的是Winrm协议。我写了一篇有趣的文章 https://serverfault.com/questions/803453/windows-server-2012-default-desktop-size
因此,也许是由于显示驱动程序(Hyper-V视频)...
答案 0 :(得分:0)
如果Windows从站由AD控制,则它可以具有自定义大小。 与RDP连接时,它将采用您的PC分辨率。
与IT部门或管理本机的人员交谈以模拟更高的分辨率。
答案 1 :(得分:0)
@ Infern0非常感谢您的帮助。 添加到已运行Win2协议并通过Winrm协议管理节点的插件中时,我解决了我的问题-数据用户:
<script>
Set-DisplayResolution -Width 1920 -Height 1080 -Force
</script>
<persist>true</persist>
答案 2 :(得分:0)
当显示分辨率改为1036 * 660时,Jenkins插件不能用于Windows上的Selenium测试。因为当使用WinRm或ssh作为连接到从站的方法时,插件在非交互会话0中工作。
我们不能影响这种情况。
您可以在Microsoft文档中获取有关CreateProcessAsUserA函数的更多信息。
您可以使用github murrayju / CreateProcessAsUser中的示例代码。