![](/img/trans.png)
[英]How to launch Firefox browser through GeckoDriver and Selenium
[英]How to switch frames through Selenium in Chrome and Firefox browser?
在我的情況下,我的被測APP中有很多框架,還有很多彈出窗口,因此我每次都需要進入彈出窗口並返回原始Windows: chrome:
ExemplePg.getWindowHandle();
driver.switchTo().defaultContent()
driver.switchTo().frame(sylobHomepg.get_FrameLevel2());
火狐:
我需要添加“ defaultContent”:
ExemplePg.getWindowHandle();
driver.switchTo().defaultContent();
driver.switchTo().frame(sylobHomepg.get_FrameLevel2());
問題:
No such windows
? 更新:我使用的只是chrome:
ExemplePg.getWindowHandle();
driver.switchTo().defaultContent();
driver.switchTo().frame(sylobHomepg.get_FrameLevel2());
沒有默認設置及其工作,並且沒有使用Firefox,我需要在開關框架之前添加默認開關。
相關的HTML本可以幫助我們以更好的方式分析問題,因為仍不清楚您是否正在處理<frame>
/ <iframe>
。 Chrome和Firefox在處理<frame>
/ <iframe>
可能沒有顯着差異。
ExemplePg.getWindowHandle();
不需要這樣ExemplePg.getWindowHandle();
在<frame>
/ <iframe>
之間切換之前,但重要的是:
促使 WebDriverWait提供所需的幀,並如下切換到它 。
new WebDriverWait(driver, 10).until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(driver.findElement(sylobHomepg.get_FrameLevel2())));
在這里,您可以找到有關在Selenium Webdriver Java中不使用driver.switchTo()。frame(“ frameName”)切換到框架中的元素的相關討論?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.