selenium输出报告,对HTMLTestRunner样式调整

本文介绍如何修改HTMLTestRunner以生成中文及样式更佳的测试报告。通过调整样式和增加中文支持,使得测试报告更加直观易读。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为觉得HTMLTestRunner原来的样式太难看,而且都是英文的报告,故而对其进行了一些小小的改动,使其输出中文报告,样式也用bootstrap做了点调整,下面用个示例展示下:

# -*- coding: utf-8 -*-
import unittest


class ExampleCase1(unittest.TestCase):
    u'''此class包含两个用例:add - ok, minus - FAIL'''
    def setUp(self):
        self.a = 4
        self.b = 3

    def test_add(self):
        u'''用例1,add,此用例成功通过'''
        self.assertEqual(self.a + self.b, 7)

    def test_minus(self):
        u'''用例2,minus,此用例执行失败,4-3!=2'''
        print u'中文xxxxxxxxxxxxxxxxxxxx'
        self.assertEqual(self.a - self.b, 2)


class ExampleCase2(unittest.TestCase):
    u'''此class包含一个用例:plus - ERROR'''
    def setUp(self):
        self.a, self.b = 4, 3

    def test_plus(self):
        u'''用例3,plus,此用例执行出错,因为c未定义'''
        self.assertEqual(self.a * self.b, c)


class ExampleCase3(unittest.TestCase):
    u'''此class包含一个用例:divide - ok'''
    def setUp(self):
        self.a, self.b = 4, 2

    def test_devide(self):
        u'''用例4,divide,此用例执行成功'''
        self.assertEqual(self.a / self.b, 2)


if __name__ == '__main__':
    from HTMLTestRunner import HTMLTestRunner
    report_title = u'Example用例执行报告'
    desc = u'用于展示修改样式后的HTMLTestRunner'
    report_file = 'D:\\ExampleReport.html'

    testsuite = unittest.TestSuite()
    testsuite.addTest(ExampleCase1("test_add"))
    testsuite.addTest(ExampleCase1("test_minus"))
    testsuite.addTest(ExampleCase2("test_plus"))
    testsuite.addTest(ExampleCase3("test_devide"))

    with open(report_file, 'wb') as report:
        runner = HTMLTestRunner(stream=report, title=report_title, description=desc)

runner.run(testsuite)

主要的修改有:

  1. 报告内容改成中文
  2. 简单调整下样式
  3. 原来报错信息太长会出现横向滚动条,改为折行显示

同时使用时注意几个细节:

  • 在每个class和testcase method第一行添加段落注释,会被当做对这个用例的描述,在报告中输出,这样报告看起来更清晰漂亮一些。
  • 所有的控制台输出信息都会被捕捉并输出到报告中,所以适当直接用print输出一些辅助信息,能够让报告可读性更强
  • 注释以及print的信息含中文,则要用unicode形式输出,即引号前加u的形式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值