3

我正在尝试遵循有关多处理的鼻子文档:http: //nose.readthedocs.org/en/latest/plugins/multiprocess.html。我知道 1.3.0 中有一个错误,所以我降级到 1.1.0。

我有一个加载许多测试的跑步者。在这些测试中,我有一个不想并行运行的测试套件。我实际上只想连续运行这个套件。我不知道我需要给测试套件哪个指令来执行它。我认为可以做到,但不能100%确定。如果我理解正确,我应该能够使用 _multiprocess_shared_ = True 但它不起作用

import unittest
import time

class TestCase(unittest.TestCase):
    _multiprocess_shared_ = True
    def setUp(self):
        print "set up called"
    def test_1(self):
        print "test1"
        time.sleep(4)
    def test_2(self):
        print "test2"
    def test_3(self):
        print 'test3'

输出是这个

set up called
test1
set up called
test2
set up called
test3
test2...ok
test3...ok
test1...ok

我希望是这个

setup called
test1
test1...ok
setup called
test2
test2...0k
setup called
test3
test3...ok
4

1 回答 1

0

多处理共享适用于类/模块级别的设备而不是测试级别,这是 setUp() 所做的。尝试添加一个 setUpClass() 方法,它应该以这种方式调用。

于 2017-10-17T23:02:28.887 回答