簡體   English   中英

在瀏覽器標簽之間切換-Appium

[英]Switching between browser tabs - Appium

    # get current window handle
    window_before = self.driver.window_handles[0]

    # click on a button which opens a new tab
    self.driver.find_element(*EditLocators.preview_button).click()

    # wait for new tab to open
    self.wait_for_new_tab()

    # get the new tab's window handle
    window_after = self.driver.window_handles[1]

    # switch to new tab
    self.driver.switch_to.window(window_after)

    "do some actions in new tab"

    # close that new tab
    self.driver.close()

    # switch back to original tab
    self.driver.switch_to.window(window_before)

上面是我在Chrome瀏覽器中對網站進行Appium測試的代碼段,該代碼段正在物理設備(android)上運行。 網頁上有一個按鈕,可打開一個新選項卡。 我必須在這兩個選項卡之間切換,但出現此錯誤:

selenium.common.exceptions.WebDriverException: Message: unknown error: 'name' must be a string
(Session info: chrome=69.0.3497.100)
(Driver info: chromedriver=2.38.552522 
(437e6fbedfa8762dec75e2c5b3ddb86763dc9dcb),platform=Linux 4.15.0-38-generic x86_64)

在這一行:

self.driver.switch_to.window(window_after)

我的appium服務器版本是1.8.1,appium python客戶端版本是0.28。

當我打印“ window_before”和“ window_after”變量時,結果分別是CDwindow-0,CDWindow-1

將appium服務器從1.8.1更新到1.9.1解決了該問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM