python接口自动化-unittest-生成测试报告
HTMLTestRunner
HTMLTestRunner 是 Python 标准库的 unittest 单元测试框架的一个扩展。它生成易于使用的 HTML 测试报告。
一、目录结构
先来看一下项目的目录结构:
- case 存放测试用例
- commen 存放公共模块
- report 存放测试报告
1、可以到下载HTMLTestRunner放到site-packages文件夹,然后直接import HTMLTestRunner
2、也可以把HTMLTestRunner放到commen文件夹下,使用的时候直接导入就可以
二、运行结果
三、run_all_case.py代码如下:
# coding:utf-8
import unittest
from commen import HTMLTestRunner_jpg
import os
current_path = os.getcwd() # 当前文件路径
case_path = os.path.join(current_path, "case") # 用例路径
# 存放报告路径
report_path = os.path.join(current_path, "report")
# discover找出以test开头的用例
def all_case():
discover = unittest.defaultTestLoader.discover(case_path,
pattern="test*.py")
return discover
if __name__ == "__main__":
# 测试报告为result.html
result_path = os.path.join(report_path, "result.html")
# 打开文件,把结果写进文件中,w,有内容的话,清空了再写进去
fp = open(result_path, "wb")
runner = HTMLTestRunner_jpg.HTMLTestRunner(stream=fp,
title="测试报告",
description="用例执行情况")
# 调用all_case函数返回值
runner.run(all_case())
# 有开有闭,关闭刚才打开的文件
fp.close()