在测试行业,如果利用python作为脚本语言开发自动化测试用例,可用的框架有rf,unittest,pytest等主流可供选择,个人感觉较之rf和unittest,pytest应该算是现阶段最灵活,功能最全面,扩展最丰富的框架了。
不知道各位在做自动化的时候有没有遇到过用例数过多,单机执行效率不高的困扰。接下来浅谈个人对单元测试框架pytest中的并行执行插件pytest-xdist使用心得.
前提
可以并行执行的测试用例,需要满足以下原则:
1、用例之间是独立的,用例之间没有依赖关系,用例可以完全独立运行 【独立运行】
2、用例执行没有顺序,随机顺序都能正常执行 【随机执行】
3、每个用例都能重复运行,运行结果不会影响其他用例 【不影响其他用例】
pytest-xdist这款插件允许用户将测试并发执行(进程级并发). 我们可以通过官方文档https://github.com/pytest-dev/pytest-xdist了解到相关的使用信息
pytest -n 参数,指定并行执行的cpu个数,比如咱们的测试执行机cup个数为8,如果想启动全部cpu参与调度,则直接使用pytest -n 8指定即可
pytest -n auto 可以允许