pytest执行顺序一般是按照从上往下的顺序执行的,如果使用过程中想要指定顺序,可以使用ordering插件,但在实际使用中,会涉及到一些其它顺序相关的问题。
使用场景:
- 一份详细的自动化用例中,区分筛选冒烟用例和详细用例等标注,如果验证性执行或者首次执行,一般会先执行冒烟
- 部分模块功能变动测试,此时会实际到区分模块的分组执行
- 散布在整套用例中区分一些测试,如接口测试或者web测试,需要筛选出来执行
执行方法:
在用例前做标记,用@pytest.mark的方法给所有用例打标,如图,在每个用例前面加一条@pytest.mark.tag,tag可以自定义编辑
执行的时候命令行或者主函数可以输入pytest -vs -m “tag”,此时执行的时候就会筛选选择标签的用例执行
Ps:
- 如果想要执行多个标签的用例,可以输入pytest -vs -m “tag1 or tag2”
- 如果想要执行拥有两个标签的用例,可以输入pytest -vs -m “tag1 and tag2”
如果遇到一些不想执行的测试用例,可以使用skip的方式,如图,在对应的用例前加个@pytest.mark.skip(),括号里面可以输入原因,也可以不填写,此时执行过程中会跳过那条用例。