作用
日志
1. 记录代码的执行记录,方便复现场景

2. 可以作为bug依据
截图
1. 断言失败或成功截图
2.异常截图达到丰富报告的作用
3. 可以作为bug依据
page source
1. 协助排查报错时元素当时是否存在页面上
二、行为日志记录2.1 简介行为日志是一种用于记录系统或应用系统的操作和事件的技术。它的目的是跟踪和记录应用程序的执行过程,以便在需要时审计、排查故障。2.2 主要内容时间戳(Timestamp):每个日志记录的时间,记录每个操作或时间发生的确切时间点。操作描述(Action Description):对每个操作或者事件的详细描述,例如执行的操作。事件级别(Log Level):表示日志记录的重要性级别。如信息、警告、错误等。相关信息(Additional Information):可以包括与操作或事件相关的其他数据,如参数、输入值等。2.3 实现方式需要先导入logging模块,运行之后,可以看到打印了对应的行为日志。Python语法:def test_logging(): # 实例化driver driver = webdriver.Chrome() # 隐式等待 driver.implicitly_wait(10) # 打开百度首页 driver.get("https://www.baidu.com") # 记录日志 logging.info("打开百度首页") # 输入霍格沃兹学院 driver.find_element(By.CSS_SELECTOR,"#kw").send_keys("霍格沃兹学院") # 记录日志 logging.info("输入霍格沃兹学院") # 点击搜索 driver.find_element(By.CSS_SELECTOR,"#su").click() # 记录日志 logging.info("点击搜索") time.sleep(3) driver.quit()
三、步骤截图记录3.1 简介步骤截图用于捕捉Web自动化测试过程中的关键执行步骤,以便验证测试用例的正确性和可视化执行过程。3.2 主要内容屏幕截图:捕获Web自动化测试执行期间的屏幕图像,包括应用程序界面、当前页面内容和操作后的可视变化。元素状态截图:捕获特定元素的状态,例如鼠标悬停、点击或其他交互触发的状态。这有助于验证页面元素的交互性和正确性。控制台日志截图:捕获测试执行期间,浏览器控制台的日志信息。将控制台日志与屏幕截图结合使用,有助于更全面地分析测试执行过程中的问题。3.3 实现方式driver.get_screenshot_as_file:用于将当前浏览器窗口的屏幕截图保存为文件,需提前创建保存截图文件的目录。Python语法:
def test_screenshot(): # 实例化driver driver = webdriver.Chrome() # 显示等待 driver.implicitly_wait(10) # 打开百度首页 driver.get("https://www.baidu.com") # 获取步骤截图 driver.get_sreenshot_as_file(f"./screenshot/打开百度首页.png") # 输入霍格沃兹学院 driver.find_element(By.CSS_SELECTOR,"#kw").send_keys("霍格沃兹学院") # 获取步骤截图 driver.get_screenshot_as_file(f"./screenshot/输入霍格沃兹学院.png") # 点击搜索 driver.find_element(By.CSS_SELECTOR,"#su").click() # 获取步骤截图 driver.get_screenshot_as_file(f"./screenshot/点击搜索.png") time.sleep(3) driver.quit()
四、页面源代码page source记录4.1 简介page source是一个用于捕获当前网页的DOM(文档对象模型)结构的关键数据记录。用于排查元素查找问题、验证页面结构和属性。4.2 主要内容HTML结构:整个页面的HTML标记,包括元素、属性和内容。CSS样式:与页面关联的CSS样式信息,有助于了解元素的布局。元素属性:每个元素的属性,用于标识和定位元素。JavaScript代码:如果页面包含JavaScript,也可以包括JavaScript代码,以便分析页面的交互行为。4.3 实现方式driver.page_source:用于获取当前网页的HTML源代码。Python实现:
def test_page_source(): driver = webdriver.Chrome() driver.implicitly_wait(10) driver.get("https://www.baidu.com") # 打印页面信息 print(driver.page_source) driver.find_element(By.CSS_SELECTOR,"#kw").send_keys("测试开发") driver.find_element(By.CSS_SELECTOR,"#su").click() time.sleep(2) driver.quit()
软件测试开发免费视频教程分享 - 公众号 - 测试人社区