Python selenium实现断言3种方法解析
1.if ...else ...判断进行断言
from time import * from selenium import webdriver def login(user="admin",pwd="123456"): driver = webdriver.Chrome() driver.implicitly_wait(10) driver.get("http://192.168.1.110:8080/cms") driver.maximize_window() sleep(1) driver.find_element_by_id("userAccount").send_keys(user) sleep(1) driver.find_element_by_id("loginPwd").send_keys(pwd) sleep(1) driver.find_element_by_id("loginBtn").click() #登录 sleep(1) users = driver.find_element_by_class_name("c-white").text #获取用户名 sleep(1) driver.quit() if users[6:] == user: pass else: raise AssertionError if __name__ == '__main__': login()
from time import * from selenium import webdriver def login(user="admin",pwd="123456"): driver = webdriver.Chrome() driver.implicitly_wait(10) driver.get("http://192.168.1.110:8080/cms") driver.maximize_window() sleep(1) driver.find_element_by_id("userAccount").send_keys(user) sleep(1) driver.find_element_by_id("loginPwd").send_keys(pwd) sleep(1) driver.find_element_by_id("loginBtn").click() #登录 sleep(1) users = driver.find_element_by_class_name("c-white").text #获取用户名 sleep(1) driver.quit() if users[6:7] == user: pass else: assert False if __name__ == '__main__': login()
2.try ... except ...断言
from time import * from selenium import webdriver def fatie(title,body): dr = login() sleep(2) dr.find_element_by_partial_link_text("版块").click() sleep(1) dr.find_element_by_id("subject").send_keys(title) sleep(1) dr.find_element_by_id("fastpostmessage").send_keys(body) sleep(2) dr.find_element_by_name("topicsubmit").click() sleep(2) try: dr.find_element_by_id("thread_subject") except: raise AssertionError else: pass sleep(3) dr.quit()
3.assert断言(基于unittest)
- assertIn(arg1, arg2, msg=None) 验证 arg1 是 arg2 的子串,不是则 fail
- assertNotIn(arg1, arg2, msg=None) 验证 arg1 不是 arg2 的子串,是则 fail
- assertEqual(arg1, arg2, msg=None) 验证 arg1=arg2,不等则 fail
- assertNotEqual(arg1, arg2, msg=None) 验证 arg1 != arg2, 相等则 fail
import time import unittest class Test(unittest.TestCase): def test01(self): self.assertEqual(2,2,msg="test01 error!") def test02(self): self.assertNotEqual(1,2,msg="test02 error!") def test03(self): self.assertIn("fang","xinfangshuo",msg="test03 error!") def test04(self): self.assertNotIn("xing","xinfangshuo",msg="test04 error!") def tearDown(self): time.sleep(1) if __name__ == '__main__': unittest.main()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
赞 (0)