2017-08-30 67 views
0

對於使用機器人框架和Selenium2Library的測試用例,我們通常先打開瀏覽器,然後在該瀏覽器上執行操作。是否有可能通過機器人框架訪問已經打開的瀏覽器?

但對於快速測試步驟我的測試情況下(測試我的測試本身),這將是很好,如果我可以只運行例如「點擊按鈕」上已有瀏覽器會話的目的。

如果我的AUT必須處於特定的屏幕和狀態才能執行特定操作,這將節省大量時間。這樣,我可以自動化並獨立測試某個步驟,而無需腳本在第一個步驟之前執行所有必需的步驟。

有沒有selenium2libary關鍵字或其他方式我可以這樣做?

謝謝!

+0

感謝您指出了這一點:如果窗口是大於1試試下面的代碼,你可以做下面的變化。 – Mytzenka

回答

1

你不需要robotframe相同。你可以檢查WindowHandles。如果windowHandle的值超過0,那麼有更多窗口打開,然後是默認窗口。

代碼如下所示。

String subWindowHandler; 
Set<String> handles = driver.getWindowHandles(); // get all window handles 
Iterator<String> iterator = handles.iterator(); 
int i=handles.size(); 
while (iterator.hasNext()){ 
    subWindowHandler = iterator.next(); 
} 
if(i>0) { 
    driver.switchTo().window(subWindowHandler); // switch to popup window 
    driver.close(); 
} 

希望它會幫助你:)

相關問題