zoukankan      html  css  js  c++  java
  • python接口自动化测试(七)unittest 生成测试报告

    用例的管理问题解决了后,接下来要考虑的就是报告我问题了,这里生成测试报告主要用到 HTMLTestRunner.py 这个模块,下面简单介绍一下如何使用:

    一、下载HTMLTestRunner下载:

    这个模块不能通过pip安装,只能下载安装,下载地址如下:

    二、mac下配置:

    1、终端进入python环境

    2、输入:

    import sys
    print sys.path
    3、找到site-packages文件夹的路径并将下载的 HTMLTestRunner.py 文件拷贝到此的文件夹下 
    4、在python环境下,输入 import  HTMLTestRunner 不报错即安装成功
     
     
    三、使用该模块生成报告:
    1、目录结构
    • case包下面有baidu,httpbin两个包
    • 每个包下面分别有两个测试的py文件
    • 每个test_00x.py文件里各有2个test case
    • run_all_case.py文件:用来执行所有的test case且生成测试报告
      

    2、运行后生成报告如下:

    3、run_all_case.py代码如下:

    复制代码
    # -*- coding:utf-8 -*-
    import unittest
    import os
    import time
    import HTMLTestRunner
    
    # 用例路径
    case_path = os.path.join(os.getcwd())
    # 报告存放路径
    report_path = os.path.join(os.getcwd(), 'report')
    print report_path
    
    def all_case():
        discover = unittest.defaultTestLoader.discover(case_path, pattern="test*.py", top_level_dir=None)
    
        print discover
        return discover
    
    if __name__ == '__main__':
        # 1、获取当前时间,这样便于下面的使用。
        now = time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime(time.time()))
    
        # 2、html报告文件路径
        report_abspath = os.path.join(report_path, "result_"+now+".html")
    
        # 3、打开一个文件,将result写入此file中
        fp = open(report_abspath, "wb")
        runner = HTMLTestRunner.HTMLTestRunner(stream=fp,
                                               title=u'接口自动化测试报告,测试结果如下:',
                                               description=u'用例执行情况:')
        # 4、调用add_case函数返回值
        runner.run(all_case())
        fp.close()
    复制代码
  • 相关阅读:
    switch选择结构
    变量与数据类型
    if选择结构
    NewSQL数据库VoltDB特性简介
    关系代数的并行计算
    【伯乐在线】程序员一定要投资的那些事
    Spark on Yarn
    六星经典CSAPP笔记(1)计算机系统巡游
    程序员的“机械同感”
    Impala中的代码生成技术
  • 原文地址:https://www.cnblogs.com/zhang-jun-jie/p/9273645.html
Copyright © 2011-2022 走看看