selenium获取断言信息

本文介绍了如何在Selenium中进行断言,通过比较实际结果与预期,确保测试的准确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

将实际结果与预期进行比较,这个比较称之为断言

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome()
driver.get("http://www.baidu.com")

#打印当前页面title
title = driver.title
print(title)

#打印当前页面url
now_url = driver.current_url
print(now_url)

driver.find_elemnt_by_id("kw").send_keys("selenium")
driver.find_element_by_id("su").click()
sleep(1)

#打印当前页面title
title = driver.title
print(title)

#打印当前页面url
now_url = driver.current_url
print(now_url)

try:
	assert u"百度一下" in driver.title
	print("test pass")
except Exception as e:
	print("test fail")
	
### 如何在 Selenium 4 中使用断言进行测试验证 #### 使用 Python 和 unittest 库实现断言 为了在 Selenium 4 中执行断言,通常会结合 Python 的 `unittest` 或者其他测试框架一起工作。下面是一个简单的例子来展示如何利用 `unittest` 来做断言。 ```python import unittest from selenium import webdriver from selenium.webdriver.common.by import By class TestExample(unittest.TestCase): def setUp(self): self.driver = webdriver.Chrome() self.driver.get('https://example.com') def test_title_assertion(self): expected_title = "Example Domain" actual_title = self.driver.title # 断言网页标题是否等于预期值 self.assertEqual(actual_title, expected_title) def tearDown(self): self.driver.quit() if __name__ == '__main__': unittest.main() ``` 在这个案例里,`self.assertEqual()` 方法用来比较实际获取到的页面标题 (`actual_title`) 是否与期望的结果 (`expected_title`) 完全一致[^2]。 #### 结合 WebDriver API 实现更复杂的断言逻辑 除了基本的数据对比外,还可以借助 WebDriver 提供的各种方法来进行更加复杂的状态检查。比如可以等待某个条件成立之后再继续下一步的操作: ```python from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC def test_element_presence(driver): try: element = WebDriverWait(driver, 10).until( EC.presence_of_element_located((By.ID, 'myElement')) ) # 如果找到了元素,则认为测试通过;否则抛异常表示失败 assert True except TimeoutException: print("Loading took too much time!") assert False ``` 这里展示了如何设置一个超时时间并尝试定位特定 ID 的 HTML 元素。如果超过设定的时间仍未找到该元素,则触发 `TimeoutException` 并报告错误[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值