请教,每一个测试用例执行时需要休息10s,如何使用多线程方法,将测试用例全部执行完,只需要10s左右的时间?
源代码如下:
import unittest,threading
def test_task(name):
print(f"{threading.current_thread().name}:",name)
time.sleep(10)
class TestTask(unittest.TestCase):
def test01(self):
test_task(1)
def test02(self):
test_task(2)
def test03(self):
test_task(3)
def test04(self):
test_task(4)
def test05(self):
test_task(5)
def test06(self):
test_task(6)
def test07(self):
test_task(7)
def test08(self):
test_task(8)
def test09(self):
test_task(9)
def test10(self):
test_task(10)
import unittest,threading
def test_task(name):
print(f"{threading.current_thread().name}:",name)
time.sleep(10)
class TestTask(unittest.TestCase):
def test01(self):
test_task(1)
def test02(self):
test_task(2)
def test03(self):
test_task(3)
def test04(self):
test_task(4)
def test05(self):
test_task(5)
def test06(self):
test_task(6)
def test07(self):
test_task(7)
def test08(self):
test_task(8)
def test09(self):
test_task(9)
def test10(self):
test_task(10)
def run(self):
func_lst = [self.test01, self.test02, self.test03, self.test04, self.test05, self.test06, self.test07, self.test08, self.test09, self.test10]
target_lst = [threading.Thread(target = i) for i in func_lst]
for i in target_lst:
i.start()
if __name__ == '__main__':
tt = TestTask()
tt.run()
th=threading.Thread(target=test01)
th.start()
就这样把10个函数都作为线程执行
厉害啊