python笔记31: 生成测试报告

两种产生测试报告方式:1.HTMLTestRunner 2.nnreport
把HTMLTestRunner.py随便扔进python的环境变量中,例如C:\Users\fab\AppData\Local\Programs\Python\Python3
pip install nnreport
下面是通过HTMLTestRunner方式产生报告

import unittest
import HTMLTestRunner

class Testlogin(unittest.TestCase):
    def test_login_normal(self):
        self.assertEqual(1,1)


    def test_login_black_list(self):
        self.assertTrue(False,'黑名单登录运行失败')
        #assertTrue 判断返回是不是True,如果返回的是True就对了
    def test_login_exit(self):
        self.assertNotIn(1,[1,2,3],'这个是not in 的')

    def test_login_max_count(self):
        self.assertNotEqual(1,2,'这个是不相等的')


# unittest.main() 运行当前文件里面的所有用例,使用HTMLTestRunner,需要把unittest.main()注释
# 使用HTMLTestRunner产生报告方法1:
suite = unittest.TestSuite()  #建立一个测试集合
suite.addTest(Testlogin('test_login_max_count')) #把一个个用例加载进来
suite.addTest(Testlogin('test_login_exit'))
# 使用HTMLTestRunner产生报告方法2:
# suite1 = unittest.makeSuite(Testlogin)
# 把一个类里面的所有测试用例,放到一个测试集合里面



f = open('测试报告.html','wb')
# 用'wb'是因为写的时候写的是二进制的数据,并不是写的字符串
runner = HTMLTestRunner.HTMLTestRunner(f,title='登录接口测试报告',description='这个是登录接口的测试报告')
runner.run(suite)
# runner.run(suite1) #运行测试集合
f.close()

下面是通过nnreport方式产生报告  

import unittest
import nnreport

class Testlogin(unittest.TestCase):
    def test_login_normal(self):
        '''正常登录'''
        self.assertEqual(1,1)


    def test_login_black_list(self):
        '''黑名单登录'''
        self.assertTrue(False,'黑名单登录运行失败')
        #assertTrue 判断返回是不是True,如果返回的是True就对了

    def test_login_exit(self):
        '''用户注销'''
        self.assertNotIn(1,[1,2,3],'这个是not in 的')


    def test_login_max_count(self):
        '''最大此次数'''
        self.assertNotEqual(1,2,'这个是不相等的')


# 在用例下面添加了注释后,nnreport页面的description才不会为null,注意:要写在断言之前,写在断言之后还是显示null

suite = unittest.makeSuite(Testlogin)
# 把一个类里面的所有测试用例,放到一个测试集合里面

runner = nnreport.BeautifulReport(suite)
runner.report(description='登录接口测试报告',filename='log_in_report.html')

  



你可能感兴趣的:(python笔记31: 生成测试报告)