【发布时间】:2020-12-01 06:10:14
【问题描述】:
我有一个场景,单击链接会打开一个新选项卡,并且要在新选项卡上执行下一步操作。我正在使用以下代码 sn -p 来实现相同的效果(额外的打印语句只是为了验证每一步的结果):
print("Switch to window tests - a")
window_before = self.driver.window_handles[0]
print("Current Window Handle - 1",self.driver.current_window_handle)
print("Current Window Handle - 2",self.driver.window_handles[0])
print(window_before)
self.view_FormID = WebDriverWait(self.driver.instance, 10).until(
EC.visibility_of_element_located((
By.XPATH, '//*[@id="find-form"]/div[2]/div[1]/div[2]/a')))
self.view_FormID.click()
print("view_FormID link clicked")
print("Switch to window tests - b")
window_after = self.driver.window_handles[1]
print("Current Window Handle - 1", self.driver.current_window_handle)
print("Current Window Handle - 2", self.driver.window_handles[1])
self.driver.switch_to.window(window_after)
运行上述代码抛出错误:“'Driver' object has no attribute 'window_handles'”
我在任何论坛上都找不到相关的解决方案。 有人可以看看我可能缺少什么吗?
非常感谢!
PS:上面的代码 sn-p 是我 POM 中页面对象的一部分; FWIW,我无法在这里引用任何 webdriver 函数 - 所以我想问题在于应该在页面对象中调用 webdriver 对象的方式,我无法弄清楚! 我已经花了大约 2 天的时间试图弄清楚 - 所以非常感谢任何帮助:)
【问题讨论】:
标签: python selenium selenium-webdriver attributeerror window-handles