有两种方法
- 使用异常处理
- 使用装饰器
异常处理方法就是使用try...except将断言包起来,在except中写截图代码(每个断言就需要一个异常处理,不现实)
装饰器进行截图
def add_screenshot(func):
def warrper(self, *args, **kwargs):
try:
func(self, *args, **kwargs)
except AssertionError as e:
self.driver.get_screenshot_as_file('qwe.png')
raise e
return warrper
此装饰器在函数运行出错时截图并抛出异常,unittest会根据异常来判断是否通过所以在捕获之后,再抛出
截图部分代码可以修改使所有截图分类保存