python unitest Htmltestrunner

一个生成html的引用文件HTMLTestRunner.py        可以自行网上下载

一个执行所有测试的执行代码Run.py                      discover = unittest.defaultTestLoader.discover(test_dir, pattern='test*.py')

剩下的需要写接口测试代码如test_GovLoginPC.py   注意:1  接口测试代码需要用test开头   代码里面class下面的方法也需要用test_开头  为啥??? 请看第二行discover  当然可以自己定规则

Run.py

import unittest

from HTMLTestRunner import HTMLTestRunner
import time

test_dir = './'
discover = unittest.defaultTestLoader.discover(test_dir, pattern='test*.py')
if __name__ == "__main__":
    # 按照一定的格式获取当前的时间
    now = time.strftime("%Y-%m-%d %H-%M-%S")

    # 定义报告存放路径
    filename = './' + now + 'test_result.html'

    fp = open(filename, "wb")
    # 定义测试报告
    runner = HTMLTestRunner(stream=fp,
                            title="接口测试验证",
                            description="测试用例执行情况:")
    # 运行测试
    runner.run(discover)
    fp.close()              #关闭报告文件

test_GovLoginPC

代码示例

import requests,unittest
import url


# {'success': True, 'msg': '请求成功!', 'data': {'password': 'qdkj123456', 'code': '4101', 'districtFullSpell': 'zhengzhoushi', 'jgUsername': 'zz_sanban_account', 'enable': 1, 'grade': 2, 'nickname': '郑州市散办', 'isEnableVideo': 1, 'alias': 'zzsanban1000001707357406', 'platformName': '两个禁止综合信息服务平台', 'token': 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiIyIn0.eH7-ffhXY1KkcdK7C9lQ-GpKIgeSx1MeVEssChAA8CY'}, 'code': 9200}
# eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiIyIn0.eH7-ffhXY1KkcdK7C9lQ-GpKIgeSx1MeVEssChAA8CY
class MyTest(unittest.TestCase):
    def setUp(self):
        print("开始")
        pass

    def tearDown(self):
        print("结束")
        pass


class GovLoginPC(MyTest):
    def testlogin(self):
        str='请求成功!'
        a = requests.post(url.urlpc, params=url.loginparams)
        self.assertEqual(a.json()['msg'], str)


if __name__ == "__main__":
    unittest.main()

 

posted @ 2020-01-08 14:47  王亚锋  阅读(360)  评论(0编辑  收藏  举报