BSTestRunner——一个丑在路上的python unnitest HTML报告生成Runner

今天忽然看到HTMLTestRunner的样式,第一眼的感觉是样式有点过时了,稍微看了下源码,果然最后更新时间是几年前,由于实现比较简单,所以顺手将样式改一下。

效果图

设计思想

既然有UI,那么如果不提设计思想就会让人觉得很low。

BSTestRunner的设计思想是:大量留白,创造高档的氛围,顺便使用bootstrap3,用最傻瓜的方式实现响应式。

github地址

BSTestRunner

使用示例

首先一定要下载BSTestRunner.py这个文件,然后扔到你觉得合适的地方,这个例子里我放到了当前目录下。

目录结构

BSTestRunner.py
insertion_sort.py

insertion_sort.py的源码

import unittest
import BSTestRunner

def insertion_sort(data):
    for i in range(1, len(data)):
        position = i - 1
        cur = data[i]

        while position >= 0 and cur < data[position]:
            data[position + 1] = data[position]
            position = position - 1

        data[position + 1] = cur

class InsertSortTest(unittest.TestCase):
    def setUp(self):
        self.data = [3, 7, 21, 8, 5, 40]
        self.sorted_data = [3, 5, 7, 8, 21, 40]

    def test_insertion_sort(self):
        insertion_sort(self.data)
        self.assertEqual(self.data, self.sorted_data)

    def test_insertion_sort_with_all_zero_data(self):
        data = [0, 0, 0, 0, 0]
        insertion_sort(data)
        self.assertEqual(data, data)

if __name__ == '__main__':
    BSTestRunner.main()

运行

python insertion_sort.py > report.html

应该看到的结果

..
Time Elapsed: 0:00:00.001000

此时当前路径下会多出一个report.html文件,用浏览器打开,结果如下所示

后续计划

有需求麻烦在github上提issue

posted @ 2016-09-27 21:37  乙醇  阅读(7968)  评论(0编辑  收藏  举报

友情链接 虫师的blog  测试教程网  重定向科技  省略