zoukankan      html  css  js  c++  java
  • Mac系统用HTMLTestRunner生成html测试报告

    参考博客:https://www.cnblogs.com/xuxiaozhu/p/10724443.html

    一、导入HTMLTestRunnerNew文件

    首先,我们要知道如果要利用HTMLTestRunnerNew生成测试报告的话,就需要对其进行导入:

    HTMLTestRunnerNew下载地址:链接:https://pan.baidu.com/s/1DO8_0HrNx_UtVPzqCEJ8CQ  密码:5yoy

    下载好了之后需要把这个文件复制到python的lib目录下面,操作步骤如下

    在访达中command+shift+G,在弹出的输入框中输入:/资源库/Frameworks/Python.framework/Versions/3.6/lib/python3.6,找到这个目录后把文件放在这个文件夹里面就可以了

    二、实操

    放好了之后我们就来写代码测试一下:

    我的文件目录是这样的:

    首先我创建了一个计算加法和乘法的类:

    复制代码
     1 #!usr/bin/env python3
     2 # -*- coding:utf-8 _*-
     3 
     4 class MathMethod:
     5      def __init__(self,a,b):
     6          self.a=a
     7          self.b=b
     8 
     9      def add(self):
    10          return self.a+self.b
    11 
    12 
    13      def multi(self):
    14          return self.a*self.b
    复制代码

    再对其进行测试:

    复制代码
     1 #!usr/bin/env python3
     2 # -*- coding:utf-8 _*-
     3 
     4 import unittest
     5 from write_blog.math_method import MathMethod #对需要测试的类进行导入
     6 class TestMathMethod (unittest.TestCase):
     7     # 两个正数相加
     8     def test_add_two_positive(self):
     9         res = MathMethod (1, 3).add ()
    10         print ("1+3的结果是{0}".format (res))
    11         try:
    12             self.assertEqual (5, res, "两个0相加的值不对!")  # 这里我为了可以报错,所以期望值写的是5
    13         except Exception as e:
    14             print("断言错误是{0}".format(e))
    15             raise e
    16 
    17     # 两个负数相乘
    18     def test_multi_two_negative(self):
    19         res = MathMethod (-3, -9).multi ()
    20         print ("-3*-9的结果是{0}".format (res))
    复制代码

    最后再是输出测试报告:

    复制代码
     1 #!usr/bin/env python3
     2 # -*- coding:utf-8 _*-
     3 
     4 import unittest
     5 import HTMLTestRunnerNew
     6 from write_blog import test_mathmethod # 具体到模块名
     7 
     8 # 存储测试用例
     9 suite=unittest.TestSuite()
    10 
    11 # 创建一个加载器
    12 loader=unittest.TestLoader()
    13 
    14 
    15 # 从测试模块里面去找测试用例
    16 suite.addTest(loader.loadTestsFromModule(test_mathmethod))
    17 
    18 
    19 # 测试报告
    20 with open("test_report.html",'wb') as file:
    21     runner=HTMLTestRunnerNew.HTMLTestRunner(stream=file,
    22                                             verbosity=2,
    23                                             description="第一次输出报告,有点小激动",
    24                                             title="测试报告",
    25                                             tester="小猪")
    26 
    27     runner.run(suite)
    复制代码

    当然这里执行成不成功,上面的HTMLTestRunnerNew文件你得放对,不然是走不到这里的~

    执行结束之后文件夹就会新增一个名为"test_report.html"的文件,打开之后就可以看到详细的信息内容了,测试报告长这个样子:

    如果你执行之后看到这个文件了,那么恭喜你,你已经成功get此项技能~

  • 相关阅读:
    linux常用命令
    BAT:如何用批处理清空某个文件的内容
    Java_Blog01:编程入门
    Azkaban的job从创建到执行
    Sqoop1的导入导出
    Java 知识点干货
    启动Eclipse时报错如何解决?
    如何搭建JDK环境和配置JDK环境变量
    Create OpenStack and Docker base image based on CentOS7-mini ISO
    docker-ce install on CentOS7-mini
  • 原文地址:https://www.cnblogs.com/xiaoduanhe/p/12598593.html
Copyright © 2011-2022 走看看