Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 是否可以使用Nose同时多次运行一个测试?_Python_Unit Testing_Nose - Fatal编程技术网

Python 是否可以使用Nose同时多次运行一个测试?

Python 是否可以使用Nose同时多次运行一个测试?,python,unit-testing,nose,Python,Unit Testing,Nose,是否可以使用并发运行单个测试(跨多个进程)并将结果聚合为单个通过/失败结果 我们需要同时多次运行相同的测试,以确保资源锁定不会受到影响。如果nose不能做到这一点,是否有特定的测试/设计模式来实现这一点?这似乎是您希望在测试定义本身中实现的,因为您希望在结果的聚合上进行断言。我会看看在测试中使用。创建一个并行执行代码的池。您可以使用聚合结果。可以: 使用nose.plugin.multiprocess 插件,您可以并行化测试运行 跨可配置数量的工人 过程。而这可以加快速度 CPU绑定测试运行,主

是否可以使用并发运行单个测试(跨多个进程)并将结果聚合为单个通过/失败结果


我们需要同时多次运行相同的测试,以确保资源锁定不会受到影响。如果nose不能做到这一点,是否有特定的测试/设计模式来实现这一点?

这似乎是您希望在测试定义本身中实现的,因为您希望在结果的聚合上进行断言。我会看看在测试中使用。创建一个并行执行代码的池。您可以使用聚合结果。

可以:

使用nose.plugin.multiprocess 插件,您可以并行化测试运行 跨可配置数量的工人 过程。而这可以加快速度 CPU绑定测试运行,主要是 对于花费大量时间的IO绑定测试非常有用 他们大部分时间都在等待数据传输 从其他地方到达,可以 从并行化中获益

我已经调整了插件,使其能够按照您的需要并行运行单个测试。从下载并另存为
nose/plugins/repeat.py
。然后,在
nose/plugins/builtin.py
中,将行
('nose.plugins.repeat','RepeatMultiProcess'),
添加到
builtins
。这样称呼:

c:\python27\python nose-1.0.0\selftest.py --repeat-processes=2 --repeat-times=3 test2.py

注意:安装/拆卸支持可能已中断。如果是这样的话,解决方法很简单,请参见第

行中的注释,您误解了-我需要同时运行一个测试多次。我没有误解,这是“跨多个进程”运行的内置方法。我正试图找出如何使用它来并行运行同一个测试。确实,我的方法是可行的,但不知何故,一个测试似乎总是只运行一次。正在调试…您的两个源链接现在都已断开。你能把原始代码放在github或其他东西的概要中吗?所以是的,可以同时运行单个测试。您能否更详细地描述聚合为单个通过/失败的过程?是否要在同一套件中将单个测试标记为“运行多次”,并将其他测试标记为“运行一次”?如果是这样的话,应该很容易。