51Testing软件测试论坛

标题: Python+Selenium+UnitTest测试报告如何写? [打印本页]

作者: lsekfe    时间: 2022-11-18 14:24
标题: Python+Selenium+UnitTest测试报告如何写?
 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、报告查看
  执行后,对应的目录查看测试报告,如图所示:
[attach]145064[/attach]








欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2