python unitest自动化框架

以下举一个最简单的unitest实例,包含备注,自己拉取代码运行一次就知道原理了

python 复制代码
import unittest
import os

class TestSample(unittest.TestCase):
    @classmethod
    def setUpClass(cls) -> None:
        print('整个测试类只执行一次')

    def setUp(self) -> None:
        print("每个测试开始前执行一次")

    def test_equal(self):
        self.assertEqual(1,1)

    def test_no_equal(self):
        self.assertNotEqual(1,2)

    def tearDown(self) -> None:
        print('每个测试结束后执行一次')

    @classmethod
    def tearDownClass(cls) -> None:
        print('整个个测试执行一次')



if __name__ == '__main__':
    # unittest.main()
    #添加用例集
    suite = unittest.defaultTestLoader.discover(os.path.join(os.path.dirname(__file__)), pattern='*.py',top_level_dir=os.path.dirname(__file__))
    #执行用例,默认函数名开头为test的用例
    runner = unittest.TextTestRunner(verbosity=2)
    runner.run()

上面有前置函数,后置函数,通称为测试夹具;

测试结果报告默认在控制台输出,如果想要有html的测试报告,可以用HTMLTestRunner;以下附上对应的git代码示例

Mr_wilson_liu / Python unitest实例 · GitCode

效果展示:

相关推荐
wefg14 分钟前
【Linux】线程同步与互斥 - 2(线程同步/条件变量/基于阻塞/环形队列的cp模型/线程池/线程安全/读写锁)
linux·开发语言
雨落在了我的手上10 分钟前
C语言之数据结构初见篇(2):顺序表之通讯录的实现(续)
c语言·开发语言·数据结构
你这个代码我看不懂14 分钟前
JVM栈、方法区和堆内存
java·开发语言·jvm
GIS阵地17 分钟前
一场由Qt5 painter的drawRect引起的血雨腥风
开发语言·qt·gis·qgis
学编程就要猛19 分钟前
JavaEE初阶:多线程案例
java·开发语言
码不停蹄Zzz21 分钟前
对内存堆栈管理的简单理解[C语言]
c语言·开发语言
鲜于言悠90525 分钟前
博客系统测试报告
python·功能测试·selenium·jmeter·测试用例·集成测试·pytest
OxyTheCrack30 分钟前
【C++】一篇文章悲观锁与乐观锁与其思想在C++语言中的应用
linux·开发语言·数据库·c++·笔记
全栈凯哥35 分钟前
13.Python中while循环完全指南
python
崇山峻岭之间37 分钟前
matlab的FOC仿真
开发语言·matlab