为了方便排查问题,将执行中的错误部分截图保存。
一、思路一:
GitHub代码commits id:b5480f9
因为是查找元素是错误的来源,所以在查找错误元素中进行异常的扑捉。
# find_element.py
except:
# 在找不到元素的地方截图
file_path = "D:\\MySpace\\Python\\WebTest\\code_package\\Image\\" + value + ".png"
print(file_path)
self.driver.save_screenshot(file_path)
return None
思路二:
但是我们希望的是,主要程序执行完后,将错误部分的截图保存归档。我们可以在测试固件(后置条件)中去处理错误截图保存的。
中间有如何给错误截图起名字的部分,会调用到_outcome方法。
GitHub代码commits id:d47f034
def tearDown(self) -> None:
time.sleep(5)
for method_name, error in self._outcome.errors:
if error:
case_name = self._testMethodName
file_image_path = os.path.join(os.getcwd() + "\\report\\" + case_name + ".png")
self.driver.save_screenshot(file_image_path)
self.driver.close()