unittest 测试报告

Posted 一起学习啊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unittest 测试报告相关的知识,希望对你有一定的参考价值。

pip install parameterized

登录为样例

import json, unittest, requests, parameterized
 
 
# 定义一个登录的函数
def login(mobile, password):
    # 请求的URL
    url = \'http://localhost:8080/api/sys/login\'
    # 请求的数据
    data = {
        \'username\': username,
        \'password\': password
    }
    headers = {
        "Content-Type": "application/json"
    }
    # json.dumps(data) 将字典转为json格式
    data_json = json.dumps(data)
    # 发起请求,headers是请求头的数据,data是请求所携带的参数。并把返回的数据转为json
    res = requests.post(url=url, data=data_json, headers=headers).json()
    return res
 
 
# 为当前接口写测试用例
class CeShi(unittest.TestCase):
    # parameterized方法 用装饰器 一次执行多个测试用例
    @parameterized.parameterized.expand(
        [("13800000001", "123456", 10000), ("13811111111", "123456", 20001), ("13800000001", "1234567", 20001)]
    )
    def test_01(self, username, password, result):
        # 获取requests请求后的数据
        res = login(username, password)
        # 断言 请求后返回的状态码与测试用例里的是否一致 不一致就断言失败
        self.assertEqual(res[\'code\'], result)

 


html格式的就是HTMLTestRunner了,HTMLTestRunner是 Python 标准库的 unittest 框架的一个扩展,它可以生成一个直观清晰的 HTML 测试报告。使用的前提就是要下载 HTMLTestRunner.py,下载完后放在python的安装目录下的scripts目录下即可。 (网上有很多可以下载的,美观)

 

 1 import unittest
 2 from request_unittest.HTMLTestRunner import HTMLTestRunner
 3 from request_unittest.test_login import CeShi
 4 
 5 # 创建测试套件
 6 suite = unittest.TestSuite()
 7 # 加载测试用例
 8 suite.addTest(unittest.makeSuite(CeShi))
 9 
10 with open("test_login.html", "wb")as f:
11   # 创建Runner对象
12   runner = HTMLTestRunner(stream=f, title="登录测试报告", description="Chrome 浏览器")
13 
14   # 执行测试条件并生成测试报告
15   runner.run(suite)

 


执行这个文件就生成报告了

 

 

原文链接:https://blog.csdn.net/qq_51986989/article/details/118160541

以上是关于unittest 测试报告的主要内容,如果未能解决你的问题,请参考以下文章

使用unittest框架,如何单个运行用例?如何生成测试报告?

unittest---unittest生成测试报告

python——unittest(单元测试)

python 生成测试报告并发送邮件

python_单元测试unittest测试报告HTMLTestRunner

unittest 测试报告