Python+Selenium+UnitTest输出测试报告

发表于:2022-11-18 10:10

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:喵说测试    来源:知乎

  1、创建test.py文件
  import unittest
  #创建测试类Red,首字母大写,括号内表示继承不能省略
  class Red(unittest.TestCase):
  #初始化函数,所有测试函数运行前运行一次,@classmethod为装饰器,cls不能省略
      @classmethod
      def setUpClass(cls):
          print("starting....")
  #每个测试函数运行前运行,可运行多次
      def setUp(self):
          print("test function starting")
  #每个测试函数运行完运行,可运行多次
      def tearDown(self):
          print("test function ending")
  #创建测试函数testA,执行顺序
      def testopenweb1(self):
          print("test A")
  #创建测试函数testB
      def testopenweb2(self):
          print("test B")
  #所有测试函数运行完运行一次
      @classmethod
      def tearDownClass(cls):
          print("ending....")
  #单独运行模块时才会被执行
  if __name__=='__main__':
      unittest.main()
  2、HTMLTestRunner.py模板配置
  网上download一个HTMLTestRunner.py模板,放入python\lib目录下。
  3、创建report.py文件
  #运行测试套件下得所有函数
  import  unittest
  from test import Red
  import time 
  import HTMLTestRunner
  #获取Red类下得所有测试方法
  test=unittest.TestLoader().loadTestsFromTestCase(Red)
  #创建一个测试套件
  suite=unittest.TestSuite()
  tests=[Red("testopenweb1"),Red("testopenweb2")]
  suite.addTests(tests)
  #定义个时间字符串
  now_time=time.strftime("%Y-%m-%d %H.%M.%S")
  #指定测试报告名称(存放目录必须存在)
  file_path = "D:\\report\\" + now_time + " report.html"
  #以二进制的形式写入文件w="write",b="binary",纯文本文件不需二进制格式
  file=open(file_path,"wb")
  runner=HTMLTestRunner.HTMLTestRunner(stream=file,title="XX项目web测试报告",description="用例执行情况如下",tester="ceshi")
  runner.run(suite)
  #关闭文件
  file.close()
  4、报告查看
  执行后,对应的目录查看测试报告,如图所示:
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号