蔭新硒的webdriver,如何繼續運行在硒同一個瀏覽器測試的webdriver
在某些情況下我的測試情況下得到了失敗,我想從同一個地方(即測試W/O關閉瀏覽器)通過評論前面的代碼來解決發生問題的地方。如何在硒webdriver中做到這一點。 (喜歡從QTP步驟跑步)
任何人都可以請指導我。
感謝
蔭新硒的webdriver,如何繼續運行在硒同一個瀏覽器測試的webdriver
在某些情況下我的測試情況下得到了失敗,我想從同一個地方(即測試W/O關閉瀏覽器)通過評論前面的代碼來解決發生問題的地方。如何在硒webdriver中做到這一點。 (喜歡從QTP步驟跑步)
任何人都可以請指導我。
感謝
爲了重複使用瀏覽器,你不能在所有的測試初始化它,所以你需要使用你將有一個獨特的webdriver一個單例模式。
所以,而是採用了@before
和@after
條款初始化和關閉瀏覽器,您要使用@beforeclass
和@afterclass
。然後,該類中的每個測試方法都將使用相同的瀏覽器,從前一次測試離開它的確切位置開始。
但是這會發生在相同的測試周期。據我所知,不可能使用以不同的週期啓動的瀏覽器實例,或者手動打開。
有一種方法我意識到,但如果您決定並行運行相同的測試,則可能會導致一些問題。我建議你研究一下static
參數,看看它是否適合你。
當你開始你的第一個測試做如下:
static WebDriver driver = new FirefoxDriver(); // Could be any Driver();
這樣,你叫driver.someFunction();
將工作任何測試,只要你,直到你到達最後不要求close()
或quit()
測試。
解決辦法在這裏找到:https://code.google.com/p/selenium/issues/detail?id=3927
WebDriver driver=new RemoteWebDriver(new URL("http://localhost:7055/hub" DesiredCapabilities.firefox());
driver.get("http://www.google.com");
感謝@aimbire的回答,我明白了,想如果有亞姆在測試套件3次測試,如果第一次測試得到了在瀏覽器上執行一些操作後通過,則第2測試將繼續從當前瀏覽器運行,即不啓動新瀏覽器。如果我們聲明這個[靜態WebDriver驅動程序= new FirefoxDriver(); ] – Learner
在我從未嘗試過的測試套件之間,所以我不能保證你。 – aimbire