1、断言是:拿实际结果与预期结果进行比较的过程。
2、ui自动化中常用作断言的信息如下:
text:用于获取标签对之间的信息
title:用于获取当前页面的标题
current_url:用于获取当前页面的网址
get_attribute:获取元素的某个属性
3、断言常用字段:assertEqual、assert、assertIn、assertListEqual、assertDictEqual、assert not in。。。
注意:
1、标签元素如果不展示在界面上,获取text结果为空
2、标签对之间如果没有内容,获取text结果为空
3、如 input 之类的标签,获取text结果为空
4、获取文本,可以获取到子节点的文本
4、断言案例
from selenium import webdriver
# 创建浏览器驱动对象
driver = webdriver.Chrome(r"D:chromedriverchromedriver_win32-V103.0.5060.53chromedriver.exe")
driver.implicitly_wait(3) # 智能等待_隐性等待
# 访问网址
driver.get("http://127.0.0.1:8088/")
# 输入用户名
driver.find_element_by_name("username").send_keys("ymnl")
# 输入密码
driver.find_element_by_name("password").send_keys("123456")
# 点击登录按钮
driver.find_element_by_tag_name("button").click()
# 获取当前页面的标题
print(driver.title) # 返回:管理系统
# 获取当前页面的网址
print(driver.current_url) # 返回:http://127.0.0.1:8088/login
# 断言
assert driver.title == '管理系统'
assert driver.current_url == 'http://127.0.0.1:8088/login'
# 获取标签对的文本内容(),首先要获取到标签
r = driver.find_element_by_css_selector("body > section > div.left-side.sticky-left-side > div.left-side-inner > ul > li:nth-child(2) > a > span")
print(r.text) # 返回:项目管理
# 断言
assert r.text == '项目管理'
# 获取元素的某个属性
r1 = driver.find_element_by_css_selector("body > section > div.left-side.sticky-left-side > div.left-side-inner > ul > li:nth-child(1) > a")
print(r1.get_attribute("href")) # 返回:http://127.0.0.1:8088/my/manage
assert r1.get_attribute("href") == 'http://127.0.0.1:8088/my/manage'



