我們目前使用Behat 3爲我們的網站自動化BDD測試。Behat在多個瀏覽器中並行
目前的設置使用Jenkins運行Selenium其重視Firefox,並使用XVFB渲染(這使我們能夠在任何錯誤保存截圖)。
這對測試站點(包括JavaScript)的工作原理以及用戶可以成功執行每個記錄的任務很有用。
我期望擴大我們的測試設施,我想添加的一件事是能夠檢查多個瀏覽器。這是非常重要的,因爲我們偶爾會出現可能會破壞功能的怪癖。
由於測試目前需要一個多小時才能運行(並且我們在Jenkins上有4個套件),所以我最好喜歡同時運行所有瀏覽器。如果我找不到同時執行此操作的方法,那麼我可能只會設置多個Behat配置文件並逐一運行。
我一直在尋找的一種可能的解決方案是Ghostlab。這將允許我們同時測試多個瀏覽器和多個設備,包括移動設備。問題是,我找不到一種以有意義的方式將它與Behat結合的方式。
我可以運行連接到Ghostlab一個瀏覽器,這將導致在所有連接的瀏覽器將採取同樣的行動,然而,一個比硒打破控制的其他瀏覽器,我不知道我們會怎麼捕捉那個信息。
TL; DR:有什麼方法可以讓我跨多個瀏覽器並行運行BDD(優選的Behat)測試,並從任何失敗的瀏覽器捕獲信息?
我喜歡這個答案,並且我意識到了這個特性,但是由於在E2E測試期間發生了數據庫更改,我避免了這個問題。因爲這是一個我正在測試的網站,任意創建和銷燬虛擬主機和數據庫模式都很困難(雖然不是不可能)。此外,我仍然無法測試移動設備等。如果沒有其他解決方案出現可以解決這些問題,我會將其標記爲正確的,但我希望有一種更簡單的方法來實現。嗯......我想知道是否可以使用多配置作業和虛擬機。 – DanielM
我要說這是正確的答案,並且構建應該在容器或虛擬機中運行。 – DanielM