我的問題是關于 selenuim 中的頁面物件模型。我將嘗試通過一個例子來解釋自己假設我有 2 個站點。第一個(www.aaa.com)有一個按鈕,點擊他會把我們帶到第二個網址(www.bbb.com)對于兩個頁面,我都有一個類(AAA,BBB),其中包含與以下內容相關的元素他們每個人。現在我有以下代碼:
@BeforeClass
public void openBrowser() {
WebDriverManager.chromedriver().setup();
driver = new ChromeDriver();
driver.manage().window().maximize();
driver.navigate().to("http://www.aaa.com");
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
AAA a= PageFactory.initElements(driver, AAA.class);
BBB b = PageFactory.initElements(driver, BBB.class);
}
我的問題是:最后一行代碼: BBB b = PageFactory.initElements(driver, BBB.class); 將拋出例外,因為物件驅動程式當前設定為與http://www.aaa.com 一起使用,因此當嘗試從http://www.bbb.com查找元素時,我們將收到一個例外說:“NoSuchElement” ? 根據我的嘗試,它不會發生,但對我來說很驚訝,我真的很想了解它是如何正常作業的?我確信只有在移動到第二頁(http://www.bbb.com)后才應該寫最后一行
uj5u.com熱心網友回復:
PageFactory.initElements不會拋出NoSuchElement例外。原因是,initElements不會findElement呼叫而是使用元素代理初始化元素物件。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/404734.html
標籤:
