在自動化測試的過程中,遇到在一個頁面打開一個彈出框后,不能夠鎖定彈出框內的元素,頁面提示元素不能訪問。
引起這種問題的原因可能是因為selenium的還是在老的頁面上進行搜索,沒有將搜索元素的方法放在彈出框上進行搜索,所以需要將selenium的焦點放在新的彈出框上,語句為:driver.current_window_handle
driver.find_element_by_xpath(".//*[@id='tb']/div[1]/dl/dd[2]").click() # 將焦點鎖定在新的彈出框上 driver.current_window_handle driver.find_element_by_xpath(".//*[@id='editForm']/li[4]/span/span/span").click() sleep(3) driver.quit()
如上圖所示,使用切換焦點的語句后,可以順利的鎖定彈出框內的元素。