def wraper_func(test_func): @wraps(test_func) # @wraps:避免被装饰函数自身的信息丢失 def inner_func(self): failures = str([fail[0] for fail in self._outcome.result.failures]) if test_func.__name__ in failures: test = lambda:True else: test = lambda:False return test return inner_func
时间: 2024-02-10 22:20:49 浏览: 124
wrapper-windows-x86-32-3.5.29.zip_wraper_wrapper 32
这段代码是一个装饰器函数,接受一个测试函数作为参数并返回一个新的函数。新函数会判断传入的测试函数是否在测试结果中出现失败,并返回一个布尔值表示测试是否通过。
其中,@wraps(test_func)是一个装饰器,用于将新函数的元信息设为被装饰函数的元信息,避免被装饰函数自身的信息丢失。该函数的作用是为了保留原函数的元信息,例如函数名、参数列表等,以便在调试和文档生成等场景下使用。
阅读全文