<menu id="ycqsw"></menu><nav id="ycqsw"><code id="ycqsw"></code></nav>
<dd id="ycqsw"><menu id="ycqsw"></menu></dd>
  • <nav id="ycqsw"></nav>
    <menu id="ycqsw"><strong id="ycqsw"></strong></menu>
    <xmp id="ycqsw"><nav id="ycqsw"></nav>
  • js彈窗編程代碼大全(網頁html彈窗公告代碼)


    JavaScript 彈出框處理


    js彈出框的方法使用:

    先使用switch_to.alert切換到瀏覽器彈出框

    再使用alert類的操作方法:

    • dismiss():取消
    • accept():確定
    • text():獲取彈框中的文本信息
    • send_keys():往彈框中輸入文本信息

    js之:Alerts彈框:

    web自動化測試JavaScript 彈出框處理
    web自動化測試JavaScript 彈出框處理
    
    import time
    from selenium import webdriver
    from selenium.webdriver.support.wait import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
    
    
    desired_capabilities = DesiredCapabilities.CHROME
    desired_capabilities['pageLoadStrategy'] = 'normal'
    driver = webdriver.Chrome()
    start_time = time.time()
    driver.get('https://www.selenium.dev/documentation/en/webdriver/js_alerts_prompts_and_confirmations/')
    end_time = time.time() - start_time
    print(end_time)
    driver.find_element_by_xpath("http://a[contains(text(),'See an example alert')]").click()
    WebDriverWait(driver, 10).until(EC.alert_is_present())
    alert = driver.switch_to.alert
    text_info = alert.text
    print(text_info)
    alert.accept()
    time.sleep(10)
    driver.quit()
    
    

    控制臺顯示了js彈框中的文本信息:

    
    F:virtualEnvironmentvenvScriptspython.exe F:/git/AuomationTest/AuomationTestProject/webTestAuomation/element_localization.py
    17.46286106109619
    Sample alert
    
    Process finished with exit code 0
    

    js之:Confirm彈框:

    web自動化測試JavaScript 彈出框處理
    web自動化測試JavaScript 彈出框處理
    
    import time
    from selenium import webdriver
    from selenium.webdriver.support.wait import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
    
    desired_capabilities = DesiredCapabilities.CHROME
    desired_capabilities['pageLoadStrategy'] = 'normal'
    driver = webdriver.Chrome()
    start_time = time.time()
    driver.get('https://www.selenium.dev/documentation/en/webdriver/js_alerts_prompts_and_confirmations/')
    end_time = time.time() - start_time
    print(end_time)
    driver.find_element_by_css_selector(
        "section:nth-child(2) div.padding.highlightable:nth-child(2) div:nth-child(3) p:nth-child(8) > a.highlight").click()
    WebDriverWait(driver, 10).until(EC.alert_is_present())
    alert = driver.switch_to.alert
    text_info = alert.text
    print(text_info)
    alert.dismiss()
    time.sleep(10)
    driver.quit()
    
    

    控制臺顯示了js彈框中的文本信息:

    
    F:virtualEnvironmentvenvScriptspython.exe F:/git/AuomationTest/AuomationTestProject/webTestAuomation/element_localization.py
    31.936458826065063
    Are you sure?
    
    Process finished with exit code 0
    

    js之:Prompt彈框:

    web自動化測試JavaScript 彈出框處理
    web自動化測試JavaScript 彈出框處理
    
    import time
    from selenium import webdriver
    from selenium.webdriver.support.wait import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
    
    desired_capabilities = DesiredCapabilities.CHROME
    desired_capabilities['pageLoadStrategy'] = 'normal'
    driver = webdriver.Chrome()
    start_time = time.time()
    driver.get('https://www.w3school.com.cn/tiy/t.asp?f=js_prompt')
    driver.find_element_by_css_selector(
        "body:nth-child(2) div:nth-child(2) ul:nth-child(1) li:nth-child(4) > a:nth-child(1)").click()
    iframe = driver.find_element_by_xpath("http://iframe[@id='iframeResult']")
    driver.switch_to.frame(iframe)
    driver.find_element_by_css_selector("body:nth-child(2) > button:nth-child(2)").click()
    WebDriverWait(driver, 10).until(EC.alert_is_present())
    alert = driver.switch_to.alert
    alert.send_keys("自動化測試")
    time.sleep(2)
    alert.accept()
    
    

    注意:敲黑板并劃重點:

    alert.send_key()輸入的數據,是不會把彈框中的默認參數替換掉的

    所以百度了一個能看到alert彈框返回值的栗子:

    首先我在send_key()中輸入的是 ” 自動化測試 ” 然后點擊 ” 確定 ” ,頁面顯示的就是我輸入的返回值:

    web自動化測試JavaScript 彈出框處理
    web自動化測試JavaScript 彈出框處理

    以上總結或許能幫助到你,或許幫助不到你,但還是希望能幫助到你,如有疑問、歧義,評論區留言會及時修正發布,謝謝!

    版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

    發表評論

    登錄后才能評論
    国产精品区一区二区免费