【问题标题】:How can I switch between two windows in appium ( python )如何在 appium ( python ) 中的两个窗口之间切换
【发布时间】:2021-02-13 12:31:27
【问题描述】:

我正在尝试运行一个在运行时打开一个新窗口的测试 我的主应用程序中有一个按钮,可以打开一个不同名称的新窗口 我尝试使用:

desired_caps["app"] = 'myappname'
driver = webdriver.Remote(
        command_executor='http://127.0.0.1:4723',
        desired_capabilities= desired_caps)
driver.find_element_by_name("OK").click()
#after click on this a new window opens with this name, "Confirmation"
driver.switch_to_window("Confirmation")

我也想换个方式写:

webdriver.switch_to.SwitchTo.window(self,"Confirmation")

谁能帮我解决这个问题?

【问题讨论】:

    标签: python selenium appium windows-application-driver


    【解决方案1】:

    我没有看到您在哪里打开了新窗口。您正在尝试切换到尚未打开的窗口?

    试试:

    driver.get('http://website.com')
    

    【讨论】:

    • 当我点击删除按钮时,会弹出一个“是”或“否”窗口,并且该窗口不是我的主窗口的子窗口,因此我无法访问该窗口以单击“是”
    • HTML 弹出窗口或系统对话框?
    • 我的应用程序正在 Windows 中运行。它的基础是 QT 和 C++。
    • 发布弹出窗口的图像。是系统(Windows 弹出窗口?)还是网站弹出窗口?
    • 弹出窗口
    【解决方案2】:

    在 windows 基础应用程序中的两个窗口之间切换,我们可以使用...

    windows = self.driver.window_handles
    self.driver.switch_to.window(windows[0])
    

    通过这段代码,我们可以在两个打开的窗口之间切换。 通常在主窗口中打开 Yes 或 No 窗口,您可以通过此切换到该窗口。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-02
      • 2023-03-03
      • 1970-01-01
      • 2012-03-30
      • 1970-01-01
      • 2018-10-19
      • 1970-01-01
      相关资源
      最近更新 更多