unittest和HTMLTestRunner结合生成报告(四)

官方文档 https://pypi.org/project/html-testRunner/

安装方式:pip install html-testRunner
导入方式:import HtmlTestRunner

import unittest
import port
class TestMethod(unittest.TestCase):

    def setUp(self):
        self.url = 'http://127.0.0.1:8001/login/'
   		self.data = {
        'username':'jonathantfff',
        'password':'jack666666',
    				}
	    self.run = Runmain()

    def tearDown(self):
        print('teardown ')

    def test_01(self):
    	res = self.run.run_main(self.url,self.data)
        self.assertEqual(res['code']=101)  #断言,断言成功则跳过,否则报错
        globals()['code'] =  res['code']  # globals()['code']定义全局变量(固定用法),这个全局变量可以给下一个测试的函数使用(集成测试)

    def test_02(self):
        print(code)  #直接使用变量就可以返回定义的全局变量【使用的时候尽量减少依赖执行,unittest执行的时候是按照test后面的字母顺序执行的】

	#通过这种方式跳过 "test_03"这个测试
	@unittest.skip('test_03')
	def test_03(self):
		print('这是测试的第三个case')

if __name__ == '__main__':
    #unittest.main() 
    #那么除了 "unittest"还有什么方法可以启动呢,unittest为我们提供了一个容器
    suite = unittest.TestSuite()  #创建容易
    suite = addTest(TestMethod('test_01')) #向容器内添加测试
    suite = addTest(TestMethod('test_02')) 
    suite = addTest(TestMethod('test_03')) 
    # unittest.TextTestRunner().run(suite)  #启动容器(用HTMLTestRunner的话这句话就不需要了)
    filepath = "./report/htmlreport.html"  #定义文件路径
	fp = file(filepath,'wb')  #打开文件句柄
	runner  = HTMLTestRunner.HTMLTestRunner(stream=fp,title='this is first report')
	runner .run(suite)
    

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1.将 HTMLTestRunner.py 放置在 C:\Python36\Lib 下 2.涉及到创建目录和时间,需要在脚本开头 import os import time 3.执行脚本中删除语句 unittest.main() ,一般在脚本最后,然后添加如下语句: #导入HTMLTestRunner库,这句也可以放在脚本开头 from HTMLTestRunner import HTMLTestRunner #定义脚本标题,加u为了防止中文乱码 report_title = u'登陆模块测试报告' #定义脚本内容,加u为了防止中文乱码 desc = u'手机JPG登陆模块测试报告详情:' #定义date为日期,time为时间 date=time.strftime("%Y%m%d") time=time.strftime("%Y%m%d%H%M%S") #定义path为文件路径,目录级别,可根据实际情况自定义修改 path= 'D:/Python_test/'+ date +"/login/"+time+"/" #定义报告文件路径和名字,路径为前面定义的path,名字为report(可自定义),格式为.html report_path = path+"report.html" #判断是否定义的路径目录存在,不能存在则创建 if not os.path.exists(path): os.makedirs(path) else: pass #定义一个测试容器 testsuite = unittest.TestSuite() #将测试用例添加到容器 testsuite.addTest(测试类名("测试方法名1")) testsuite.addTest(测试类名("测试方法名2")) #将运行结果保存到report,名字为定义的路径和文件名,运行脚本 with open(report_path, 'wb') as report: runner = HTMLTestRunner(stream=report, title=report_title, description=desc) runner.run(testsuite) #关闭report,脚本结束 report.close()

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值