在selenium ui自動化測試過程中,經常會遇到,彈出新窗口,那么會對我們元素定位造成哪些影響呢?
1.元素id或xpath;name都沒有問題,就是定位不到。
那如何解決呢?沒錯webdriver本身提供了一個switch_to功能。
我們先切換到新窗口;所謂的切換,是將彈出的窗口,聚丙,切換到當前聚丙。
代碼示例:
@property def switch_window(self): """ 切換window窗口,切換一次后退出 :return: 無 """ curHandle = self.driver.current_window_handle #獲取當前窗口聚丙 allHandle = self.driver.window_handles #獲取所有聚丙
"""循環判斷,只要不是當前窗口聚丙,那么一定就是新彈出來的窗口,這個很好理解。""" for h in allHandle: if h != curHandle: self.driver.switch_to.window(h) #切換聚丙,到新彈出的窗口 break
完成如上切換,那么你再定位,新窗口上的元素,相信,沒有問題了。
期待你的加入;共同學習,一起進步:
python|測試|技術交流 qq群:563227894
python|測試|技術交流 qq群:563227894
python|測試|技術交流 qq群:563227894