selenium+python自動化測試--alert彈框


問題:如何判斷是否為彈框?

回答:當在Firefox中進行定位時,鼠標無法定位到彈框及彈框中的元素,就是alert彈框。如果鼠標可以定位到彈框及彈框中的元素,則用普通定位的方法。

 

 

當使用普通定位時,有時很難點擊到彈框按鈕,導致用例失敗。下面介紹用js解決無法點擊彈框按鈕問題:

 

一、測試場景

輸入用戶名后,點擊提交按鈕,彈出“請輸入密碼”提示框,判斷是否正確提示,並關閉彈框。

 二、代碼編寫

文件名稱:test_jecnalert.py

import unittest from selenium import webdriver from common.base import Base class TestJecnalert(unittest.TestCase): user = ("name","username") @classmethod def setUpClass(cls): cls.driver = webdriver.Firefox() cls.driver.get("http://www.jecn.com.cn/member/register.php") cls.basealert = Base(cls.driver) @classmethod def tearDownClass(cls): cls.driver.quit() def getresult(self): #點擊提交按鈕
        js = '$(".submit").click()'
        #執行js
 self.driver.execute_script(js) #切換到彈窗
        al = self.driver.switch_to.alert #獲取彈框上的文字
        result1=al.text print(result1) #點擊確定按鈕
 al.accept() #返回結果
        return result1 def test_01(self): self.basealert.send(self.user,"admin") res = self.getresult() exp = "請輸入密碼!" self.assertEqual(res,exp) if __name__ == '__main__': unittest.main()

注:base.py 請查看selenium+python自動化測試--登錄

三、運行結果

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM