0

我是新來的自動化,並希望創建一個自動化測試之間切換的自動化,可以做以下操作:從選項卡要創建兩個標籤

打開一個標籤---點擊,並得到一些信息

切換到另一個選項卡---單擊並立即從此選項卡獲取一些信息。

比較資訊。

我們使用頁面對象模型從一個頁面獲取信息。但是現在,我切換到另一個選項卡 - 它成功切換選項卡,但未找到任何元素。

有什麼想法?

+0

可能是您正在查找的元素是框架/ iframe在新頁面(選項卡)打開嗎? – Surya 2015-01-21 08:55:20

回答

1

問題我會問的是,

  1. 是元素定位是否正確?
  2. 這是一個獨特的元素定位?
  3. 這是同步問題嗎?在查找元素之前,您是否足夠等待頁面加載?
  4. 這是瀏覽器特有的問題嗎?它是否一致?

此外請確保您將驅動程序對象從一個頁面對象傳遞給另一個。像,

public class PageOne { 
    public PageOne(WebDriver driver) { 
    //do something in constructor 
    } 
    public void someMethodInPage1() { 
     driver.findElement(By.id("button1")).click(); 
     PageTwo pageTwo = new PageTwo(driver); 
     pageTwo.someMethodInPage2(); 
    } 
} 

public class PageTwo { 
    private WebDriver driver; 
    public PageTwo(WebDriver driver) { 
    //do something in constructor 
    this.driver = driver; 
    } 
public void someMethodInPage2() { 
     driver.findElement(By.id("button2")).click(); 
    } 
}