github源码地址下载:https://github.com/GoverSky/HTMLTestRunner_cn.git
解压文件后取出/HTMLTestRunner_cn.py文件丢进C:\Python37\Lib\site-packages目录下
如何使用报告截图重跑机制:how to use it ?
代码编写注意事项:该模板暂时不支持setup初始化驱动driver,而且初始化驱动必须取名driver,关于 HTMLTestRunner
新增参数 retry=1表示失败后重跑的次数,save_last_try=True表示最终报告展示只要最后一次失败重跑的结果,False则每次结果都要
from selenium import webdriverimport unittest class case_01(unittest.TestCase): @classmethod def setUpClass(cls): cls.driver = webdriver.Chrome() @classmethod def tearDownClass(cls): cls.driver.quit() def add_img(self): """书写一个添加截图b64的方法""" self.imgs.append(self.driver.get_screenshot_as_base64()) return True def setUp(self): """ 在是python3.x 中,如果使用setup模式初始化driver ,因为3.x版本 unittest 运行机制不同, 会导致用力失败时截图失败目前不支持setup失败截图,关于addCleanup内置函数是 如果setUp()方法执行失败,那么不会执行tearDown()方法,但是会执行addCleanup()里添加的函数。 """ self.imgs = [] self.addCleanup(self.cleanup) def cleanup(self): pass def test_case1(self): """ 正面通过用例Test""" print("测试"*10) self.driver.get("https://www.baidu.com") self.driver.find_element_by_id(‘kw‘).send_keys(u‘百度一下‘) def test_case2(self): """失败重跑Test""" self.driver.get("https://mail.163.com/") raise TypeError 调用报告模板代码
from HTMLTestRunner_cn import HTMLTestRunnerimport unittestimport os def suites(testPath): discover = unittest.defaultTestLoader.discover(testPath, pattern=‘test*.py‘, top_level_dir=None) return discover def run(suite, htmlPath): with open(htmlPath, ‘wb‘) as f: runner = HTMLTestRunner(stream=f, title="ddt report", description="测试报告:", verbosity=3,retry=1,save_last_try=True) runner.run(suite) def main(): testPath=os.getcwd() htmlPath=r‘C:\Users\Administrator\PycharmProjects\Supro\lib\report\failTest.html‘ run(suites(testPath),htmlPath) if __name__ == ‘__main__‘: main()
原文地址:https://www.cnblogs.com/SunshineKimi/p/10699163.html
时间: 2024-11-06 11:21:31