美文网首页
python 生成用例报告

python 生成用例报告

作者: circlq | 来源:发表于2019-07-23 15:50 被阅读0次
    用python写测试用例,然后运行run.py可直接生成一个html的用例报告,如下图

    点击可以查看详细的错误信息。
    先看下run.py代码,只需要配置\color{red}{用例路径}\color{red}{用例报告路径[没有的话会自动创建]} ,运行run.py就好自动生成上面的报告了
    # coding=utf-8
    import os
    from autoCirclq.runner.TestCaseRun import TestCaseRun
    # 获取上层目录
    global_path = os.path.abspath(os.path.join(os.path.dirname(__file__), os.path.pardir))
    
    # 输出报告路径
    report_dir = global_path + os.sep + "test_reports"
    
    # 用例路径 注意该路径下,只能是用例类,不能有其他类型的类
    cases_dir = global_path + os.sep + 'test_cases'
    
    
    # 生成报告
    # 第一个参数为用例路径,第二个参数为输出报告
    TestCaseRun(cases_dir,report_dir,'用例报告')
    
    我们看下用例类,支持数据库连接跟http请求。
    # coding=utf-8
    import json
    import unittest
    
    from automate.common.util import HttpUtil, DBUtil
    from unittest2 import TestResult
    
    from config import ConfigFactory
    
    
    class AAA(unittest.TestCase):
    
        def test(self):
            """
            get接口请求,并且取出数据data-》0-》name的值跟数据库进行断言
            """
            url = ConfigFactory.get_url("temple", "url")
            params = {
                "page": 0,
                "limit": 10
            }
            # 接口请求
            response = HttpUtil.get(url, params)
            response_json = json.loads(response.text)
    
            # 数据库连接
            db_connection = ConfigFactory.get_db("db")
            if db_connection is None:
                self.fail("数据库连接异常,请检查数据库")
            else:
                db_result = DBUtil.execute_query_sql(db_connection, "select * from user")
                # 关闭数据库连接
                DBUtil.close_connection(db_connection)
                if 200 == response.status_code:
                    # 对比接口请求的数据下的dtaa[0]的name值
                    # 跟数据库的name值进行断言
                    self.assertEqual(response_json['data'][0]['name'], db_result[0]["name"])
    
        def test2(self):
            """
            get接口
            """
            url = ConfigFactory.get_url("temple", "url")
            params = {
                "page": 0,
                "limit": 10
            }
            response = HttpUtil.get(url, params)
            self.assertEqual(200, response.status_code)
    
    
    这样的用例类就会生成这样的报告,AAA类下有2个用例。

    做这些之前肯定要先导入第三方库automate-report

    如果安装不上去则用命令pip install automate-report


    ~~

    demo 点击下载

    提取码:ua5z

    相关文章

      网友评论

          本文标题:python 生成用例报告

          本文链接:https://www.haomeiwen.com/subject/qgzolctx.html