在类中使用进程池时出现了TypeError: can’t pickle generator objects的错误, 这是进程池无法序列化生成器对象的错误。
报错原因分析:unittest 超继承,改变了unittestreport的超继承的参数,所以导致的报错
不能说是代码的错误,只能说你如果想用unittestreport这个库的话,想生成报告的话。就必须取消超继承。下面是我原先的代码:执行报错:
@ddt
class TestCaseExcel(unittest.TestCase):
case = ExcelCaseReader().read_case()
filepathname = ConfigReader().get_value("file","report_file_path") + datetime.datetime.now().strftime("%Y_%m_%d_%H_%M_%S")
Getattr_count = None
excel_title = f'CaseId,Description,Module,InerfacePath,CaseResult'
fileobj = FileOperate().writefile(filepathname + ".csv", "csv", excel_title, "a+")
def __init__(self, methodName):
super(TestCaseExcel, self).__init__(methodName) # 超继承
self.log = Log()
self.executecase_class = ExecuteCase()
self.report_file_path = ConfigReader().get_value("file", "report_file_path")
self.fileoperate = FileOperate()
self.runstatus_file_path = ConfigReader().get_value("file", "runstatus_file_path")
@data(*case.caseinfo)
def test_exec_case(self, caseid):
""" 接口自动化用例 """
count =