Python自动化测试学习笔记
maiaimei 2024/1/29 Pythonpytestselenium自动化测试
# pytest
pytest是基于python的测试框架。
官网:https://docs.pytest.org/en/7.4.x/ (opens new window)
特色:
- 按照约定自动收集用例
- 作用于测试对象的多种标记功能
- 自定义fixture
- 多种执行方式
- 可视化测试报告
- 控制台打印执行记录
两个文件,conftest.py 和 pytest.ini
- conftest.py文件,conftest.py中定义的fixture,不用导入测试模块,可以直接在测试模块中以str或函数方法参数使用
- pytest.ini文件,pytest执行方案配置。常用:addopts,markers,python_function等。
# 安装pytest
pip install pytest
# -U 升级已安装的pytest
pip install -U pytest
# 检查version
pytest --version
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# 测试发现约定
pytest
将在当前目录及其子目录中运行所有文件名为 test_*.py
或 *_test.py
的文件。
https://www.cnblogs.com/bonus_scene/p/13629896.html (opens new window)
# 执行测试用例
运行全部测试用例:
pytest
1
运行指定测试用例:
pytest -k 关键字
1
pytest
默认不输出任何打印信息,如果要看打印信息,需要在运行时添加-s的指令。
# Web自动化测试
# 安装selenium
pip install selenium
1
# 安装webdriver-helper
# pip install webdriver-helper
pip install webdriver_helper==1.0.5 # 解决 ImportError: cannot import name 'get_webdriver' from 'webdriver_helper' (unknown location)
1
2
2
webdriver-helper 是一个 python 第三方库,用来更加便捷的使用 selenium,完成浏览器自动化控制的辅助工具。
因为 chrome 频繁自动更新,浏览器驱动随时可能失效,导致代码跑不起来。
有了 webdriver-helper 就再也不用关心浏览器和浏览器驱动的匹配问题了。
目前有两个版本:
第一个是免费版,版本代号 1.*, 这个版本可以帮助你免去寻找、匹配、下载合适的浏览器驱动。
pip install webdriver-helper==1.*
1
第二个是付费版本,版本代号 2.*,是在免费版的基础上进行了改进和增强。