Jenkins 解決Protractor螢幕太小

  在Jeinkins 透過command or PowerShell執行Protractor測試時,預設會在JVM的背景執行,螢幕大小只有1024*768。這導致測試會遇到點不到element的錯誤。之前的解決方法,是Jenkins透過另一程式來執行,但這樣的方式在Jenkins會無法得知測試狀況及結果。


解決方式

參考StackoverFlow的討論後,試了幾個方法...最後測試是可以透過新增slave來達到desktop互動,這樣在測試時,就會即時看到測試畫面,且螢幕大小是以你目前的顯示為主。

1.新增slave

image

2.設定slave參數

(1).輸入遠端檔案系統根目錄(官方建議為 Jenkins的安裝目錄)
(2).標籤:可以讓專案指定以此slave工作。
image

3.啟動slave,方式有2種,如下:

A.透過[Lacnch]下載代理程式,來執行
image

image
連線成功畫面 ps:1.不能關閉,2.File選單可以選擇安裝成Window Service,但這樣會同樣是背景執行而螢幕太小的問題。
image
缺點:重開機後,又要手動執行一次
B.將命令複製下來,存成.bat檔,放在window的啟動位置
java -jar slave.jar -jnlpUrl http://localhost:8080/computer/MainAgent/slave-agent.jnlp
image

image

4.將工作與slave關聯

image

設定為剛設定的標籤WebTestLabel,這樣此工作只會透過”mainAgent”來執行。

參考來源


https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+as+a+Windows+service
http://stackoverflow.com/questions/19441324/how-to-run-gui-tests-on-a-jenkins-windows-slave-without-remote-desktop-connectio

這個網誌中的熱門文章

[.NET Core] 將專案發行至IIS

[TFS] 分支與合併