TA的每日心情 | 无聊 昨天 09:47 |
---|
签到天数: 528 天 连续签到: 1 天 [LV.9]测试副司令
|
1测试积点
大概描述一下我的问题: - 创建了一个线程,线程内是能够正常运行的unittest框架的测试脚本
- 测试脚本内加了一个print 操作,线程和线程内测试脚本都正常执行完成,但相关的变量没有print出来
- 原本猜测可能和unittest有关,但去掉外层的线程创建之后,变量能正常打印,
- 所以猜测是否和多线程有关,多线程是否会有相关的影响?
猜测可能是这个原因,还在持续调试中,麻烦帮看看,谢谢
注:当前只创建了一个线程,之所以使用多线程,是有多个线程同步执行case的需求 - 部分代码如下:
- #执行case 和多线程创建部分的代码
- def run_case():
- cur_thread_name = threading.current_thread().name
- report_name = Path.date_time + '_' + cur_thread_name + 'Report.html'
- testlist = unittest.defaultTestLoader.discover(
- start_dir=Path.testcase_path_x_mac
- , pattern='test*.py')
- result = BeautifulReport(testlist)
- result.report(filename=report_name, description='Result of test', log_path=Path.report_path)
- class myThread(threading.Thread):
- def __init__(self, thread_id, name):
- threading.Thread.__init__(self)
- self.thread_id = thread_id
- self.name = name
- def run(self):
- print('开启线程:' + self.name + '\n')
- run_case()
- print('退出线程:' + self.name)
-
- if __name__ == '__main__':
- thread_list = []
- for i in range(len(ListData.node_list)):
- thread_name = ListData.node_list[i]
- new_thread = myThread(i, thread_name)
- thread_list.append(new_thread)
- for thread in thread_list:
- thread.start()
- for thread in thread_list:
- thread.join()
复制代码 |
|