我有2個問題:硒的webdriver餅乾/使用Web瀏覽器已經打開
我已經建造了硒的webdriver腳本作品的權利,但他打開火狐的新實例。是否可以使用已打開的Firefox?如果是的話,怎麼樣?
我需要向該網站發送信息,以使我的會話保持活動狀態。我打算每10分鐘使用一次cookie併發送一個請求。我不知道這是否是一個好主意......(我不能用硒認證,因爲網站生成像銀行網站數字表)
如果任何人都可以給我一些支持。 ..
我有2個問題:硒的webdriver餅乾/使用Web瀏覽器已經打開
我已經建造了硒的webdriver腳本作品的權利,但他打開火狐的新實例。是否可以使用已打開的Firefox?如果是的話,怎麼樣?
我需要向該網站發送信息,以使我的會話保持活動狀態。我打算每10分鐘使用一次cookie併發送一個請求。我不知道這是否是一個好主意......(我不能用硒認證,因爲網站生成像銀行網站數字表)
如果任何人都可以給我一些支持。 ..
如果您使用的是Seleium2/WebDriver,那麼您可以通過調用new FirefoxDriver()
來創建一個啓動瀏覽器實例,然後它可以在多個測試中重複使用。例如,如果您正在使用JUNIT,則可以在@BeforeClass
中創建FirefoxDriver
驅動程序,然後在@AfterClass
中退出該驅動程序。
browserSessionReuse
下面SO後會解釋爲什麼會話可能會過期。它也可能取決於你如何編寫測試用例(可能是你正在使用setUp()
方法初始化它)。 Selenium in -browserSessionReuse mode launchs a new browser
注:它始終是更好地創建和關閉每個測試的瀏覽器實例的測試隔離。
如果您在測試用例中使用了firefox webdriver打開了FireFox Browser的實例,並且未關閉該實例,則可以將該實例用於RemoteWebDriver。如果一個測試用例失敗並且您想手動啓動另一個測試用例,您甚至可以使用該實例。 使用此代碼。
IWebDriver WebDriver = null;
try
{
System.Uri uri = new System.Uri("http://localhost:7055/hub");
WebDriver = new RemoteWebDriver(uri, DesiredCapabilities.Firefox());
Console.WriteLine("Executed on remote driver");
}
catch (Exception)
{
WebDriver = new FirefoxDriver(firefoxProfile);
Console.WriteLine("Executed on New FireFox driver");
}
在此博客文章中查看詳細信息。 http://binaryclips.wordpress.com/2014/09/16/selenium-web-driver-in-c-how-to-continue-script-on-the-already-opened-browser-instance/
太好了。感謝您的回覆Pangea。 – Matt 2012-01-03 20:03:49
從硒服務器幫助文檔 -browserSessionReuse:停止測試之間瀏覽器的重新初始化和產卵。我試圖手動運行2個測試,但它沒有在同一個會話中運行。這是爲了不同的目的嗎? – 2012-01-04 04:18:20
我接受的答案,但我已經發布了2個問題... – Matt 2012-01-04 11:23:25