框架
自动化框架的优点????????
1. 写脚本 更加简洁
2. 脚本维护
1. 自动化
2. 效率低 提高脚本脚本
解决多脚本使用框架,不能批量运行?????
pytest+
pytest + selenium UI自动化
python常用的三种框架???????????
unittest ---python自带
pytest --- 更好的unittest
noise X
前提第一步????
安装模块
pip install pytest
pytest学习地址:
https://learning-pytest.readthedocs.io/zh/latest/doc/intro/getting-started.html
pytest --version cmd看下版本显示代表可以使用
如果你想在命令行运行就要进入对应目录执行
pytest test_66.py
pytest demo.py
记住:一个用例最少放到一个方法里
一个方法就是一个pytest测试用例,方法必须以test下划线开头
第一个命令
pytest 命令 运行当前路径下 所有符合条件的测试用例
文件模块 test_开头 test_开头
pytest 递归查询当前路径下所有符合条件的用例
pytest 命令 运行当前路径下 递归查询所有符合条件的测试用例
你想单独的运行不用pytest怎么操作????单独跑一个用例???
导入import pytest
在结尾加上 if __name__ == ‘__main__‘:
单独运行 .py文件 首先从主函数开始执行这句话???
pytest.main() 运行当前文件里 所有符合条件的测试用例,一般没啥用最好命令行会多跑
你想运行文件操作:
1.进入文件目录:递归查询所有的
pytest
某一个文本
pytest test_66.py
2.你想递归批量运行另外的文件名字
pytest demo.py
3.你想单独运行一个文件???
在python文件
导入import pytest
在结尾加上 if __name__ == ‘__main__‘:
单独运行 .py文件 首先从主函数开始执行这句话,使用命令也能跑
如果出现类的方法怎么操作???????
类的名字要加class Testlogin():#登录 起名字要标准
你做自动化测试??如何组织划分你的测试用例????
怎么划分???
第一种
一个模块,按照页面和功能分 文件有十个用例十个方法
第二种
正向用例 class
反向用例 class
ui 自动化以页面为名字,附上 方法,一个方法就是一个用例,方法放到文件里
想要显示print内容??????
命令行这么输入
pytest -s 打印详细信息
代码这么改???
if __name__==‘__main__‘:
pytest.main([‘-s‘])#运行当前目录下所有的测试用例
想要在python运行一个文件,进行用例的测试,建立一个入口文件?????????????
用例的顺序都是字母排行的
# pytest.main([‘-s‘])#所有的用例
# pytest.main([‘-s‘, ‘test_66.py‘]) # 运行当前目录单独测试用例
pytest.main([‘-s‘, ‘./demo‘]) 当前目录下文件夹
# pytest.main([‘-s‘, ‘test_55.py::test_002‘]) # 运行文件下的函数方法
你想对用例标记咋办??????????
#打标签@pytest.mark
# pytest.main([‘-s‘,‘-m=smoke or huigui‘])
最好加一个ini对测试用例进行分组
对于每一个开始和结束固定操作,进行封装提取
fixture 夹具函数
每个用例 开始 或 结尾 时间节点上 都有固定的操作
固定的流程
有问题时候呢,想要效果有问题关闭浏览器