Python selenium实现断言3种方法解析

时间:2021-05-23

1.if ...else ...判断进行断言

from time import *from selenium import webdriverdef 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 AssertionErrorif __name__ == '__main__': login()from time import *from selenium import webdriverdef 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 Falseif __name__ == '__main__': login()

2.try ... except ...断言

from time import *from selenium import webdriverdef 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 timeimport unittestclass 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()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章