pytest基础使用
Pytest是一个易用、强大、灵活的功能测试框架,并且兼容unittes的测试用例
- 易用:用例编写简单,断言方便
- 强大:全能的mark、强大的fixtures
- 灵活:灵活的执行控制及丰富的插件
安装
在命令行中安装:
在pycharm中安装:
用例编写及断言
运行方法:
打开命令行,切换到当前文件所在的目录,运行测试
在脚本中导入pytest,使用pytest.main([…])运行测试
全能的mark
mark主要用来标记用例,通过不同的标记实现不同的运行策略
主要用途:
- 标记和分类用例:@pytest.mark.levell
- 标记用例执行顺序:@pytest.mark.run(order=1)(需安装pytest-rodering)
- 标记用例在指定条件下跳过或直接失败:@pytest.mark.skipif()/xfail()
- 标记使用指定Fixtures(测试准备及清理方法):@pyest.mark.usefixtures()
- 参数化:@pytest.mark.parametrize
- 标记超时时间:@pytest.make.timeout(60)(需安装pytest-timeout)
- 标记失败重跑次数:@pytest.mark.flaky(reruns=3,reruns_delay=1)reruns=3:测试用例失败重跑3次,reruns_delay=1:用例失败则延迟1秒后重跑(需安装pytest-rerunfailurse)