2017-06-10 196 views
2

我有一個Java應用程序,它通過Selenium WebDriver Libraray控制FF瀏覽器中的自動GUI測試。 Java應用程序從數據庫中讀取測試用例,並根據代碼邏輯執行它們。在Docker容器中執行Firefox瀏覽器進行Selenium測試

舉例來說,如果應用程序在現場讀取,它會使用「findElement」 - 方法從硒框架搜索。我不使用Selenium的任何測試腳本。

目前這發生在員工的本地工作站上。

現在我想將整個環境移到Docker容器中。

它甚至有可能以實例化一個容器Firefox瀏覽器? btw:我不需要看到我的瀏覽器的實際GUI。

其次:

有幾個容器與dockerhub準備用硒,但這些不適合我的環境是嗎? 據我所知SeleniumGrid期望testscripts並且不能通過運行時執行。

我打開了一個Linux VM(Debian的:傑西分佈)與流浪者,其中然後運行泊塢窗。

我還是Docker的初學者。 我在這裏找不到任何有關我的目的的問題。 在此先感謝!

回答

1

它甚至有可能以實例化一個容器Firefox瀏覽器?

是的。最簡單的方法是使用selenium images on Docker Hub

在dockerhub上有幾個容器可以使用,但這些不適合我的環境我是正確的嗎?

如果您認爲Selenium圖像不適合您,因爲它們都基於Selenium Grid,您可以改爲使用StandaloneFirefox和StandaloneChrome圖像。這些是個別實例,它們不使用Selenium Grid。

BTW,非調試硒的圖像沒有GUI。你提到你不需要看瀏覽器運行,所以這些應該沒問題。如果您確實需要查看瀏覽器,則調試映像會安裝VNC服務器,以便您可以運行映像,連接VNC客戶端,並觀察瀏覽器運行測試。

+0

如果容器主要運行我的Java應用程序,是不是就有可能啓動一個「非硒」 Firefox瀏覽器在同一碼頭工人的容器? – Timo

+0

@TimoPa我不明白爲什麼不。我自己並沒有這樣做,但是你應該能夠深入瞭解上述的Selenium Dockerfiles,看看他們是如何做到的。您可以爲許多發行版[從命令行安裝Firefox](https://support.mozilla.org/en-US/kb/install-firefox-linux)。 – bluescores

相關問題