如何使用pytest实现多进程多线程并行执行测试案例?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2707个文字,预计阅读时间需要11分钟。
前言:在实际情况中,项目中的用例数量会非常多,几百上千个;如果采用单进程串行执行,执行时间会非常长。假设每条用例耗时2秒,1000条用例就需要2000秒,即约33分钟;再加上用例加载、测试前的准备时间,总耗时会更长。
前言:- 实际项目中的用例数量会非常多,几百上千;如果采用
单进程串行执行的话会非常耗费时间。假设每条用例耗时2s,1000条就需要2000s $\approx$ 33min;还要加上用例加载、测试前/后置套件等耗时;导致测试执行效率会相对低。 - 想象一下如果开发改动一块代码,我们需要回归一下,这时候执行一下自动化用例需要花费大半个小时或者好几个小时的时间,这是我们无法容忍的。
- 为了节省项目测试时间,需要多个测试用例同时
并行执行;这就是一种分布式场景来缩短测试用例的执行时间,提高效率。
分布式执行用例的原则:
- 用例之间是相互独立的,没有依赖关系,完全可以独立运行;
- 用例执行没有顺序要求,随机顺序都能正常执行;
- 每个用例都能重复运行,运行结果不会影响其他用例。
本文共计2707个文字,预计阅读时间需要11分钟。
前言:在实际情况中,项目中的用例数量会非常多,几百上千个;如果采用单进程串行执行,执行时间会非常长。假设每条用例耗时2秒,1000条用例就需要2000秒,即约33分钟;再加上用例加载、测试前的准备时间,总耗时会更长。
前言:- 实际项目中的用例数量会非常多,几百上千;如果采用
单进程串行执行的话会非常耗费时间。假设每条用例耗时2s,1000条就需要2000s $\approx$ 33min;还要加上用例加载、测试前/后置套件等耗时;导致测试执行效率会相对低。 - 想象一下如果开发改动一块代码,我们需要回归一下,这时候执行一下自动化用例需要花费大半个小时或者好几个小时的时间,这是我们无法容忍的。
- 为了节省项目测试时间,需要多个测试用例同时
并行执行;这就是一种分布式场景来缩短测试用例的执行时间,提高效率。
分布式执行用例的原则:
- 用例之间是相互独立的,没有依赖关系,完全可以独立运行;
- 用例执行没有顺序要求,随机顺序都能正常执行;
- 每个用例都能重复运行,运行结果不会影响其他用例。

