慕工程0101907
2021-10-28 14:41:48
我正在使用 Jenkins 在 windows slave 上運行 selenium 測試。Windows slave 有 Windows 2016 操作系統。對于已啟動的從屬實例,我為 Jenkins 使用了 ec2 插件,它使用winrm 協議來管理我們的節點。測試執行得很好,但屏幕截圖的分辨率約為 1024*786(我認為)。但是服務器的分辨率為 1920*1020。如果我在開始測試之前做了 rdp CONNECT TO SLAVE SERVER,屏幕截圖將是全尺寸的。我為通過 netplwiz 使用 winrm 的用戶添加了自動登錄。沒有幫助我。我也試過: 1. 改成windows register: DefaultSettings.XResolution,DefaultSettings.YResolution to 1902*1020;僅當我在開始測試之前將 rdp 連接到我的服務器時才幫助我。更新(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: 1080The 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 Video)...
3 回答

慕萊塢森
TA貢獻1810條經驗 獲得超4個贊
如果windows slave是由AD控制的,可以自定義大小。當您使用 RDP 連接時,它將占用您的 PC 分辨率。
與 IT 人員或管理此機器的人員聯系以模擬更高的分辨率。

呼啦一陣風
TA貢獻1802條經驗 獲得超6個贊
我在已運行 ec2 實例并通過 winrm 協議管理節點的插件中添加時解決了我的問題 - 數據用戶:
<script>
Set-DisplayResolution -Width 1920 -Height 1080 -Force
</script>
<persist>true</persist>

神不在的星期二
TA貢獻1963條經驗 獲得超6個贊
當顯示分辨率改為 1036*660 時,Jenkins 插件不能用于 Windows 上的 Selenium 測試。因為當使用 WinRm 或 ssh 作為連接到從站的方法時,插件在非交互式會話 0 中工作。
我們不能影響這種情況。
您可以在 Microsoft 文檔中獲取有關 CreateProcessAsUserA 函數的更多信息。
您可以使用來自 github murrayju/CreateProcessAsUser 的示例代碼。
添加回答
舉報
0/150
提交
取消