• python 单元测试之初次尝试


    python 语言中有很多单元测试框架和工具,而unittest单元测试框架作为标准python语言中的一个模块。是其他框架和工具的基础。
    想要进行单元测试,我们需要使用到unittest框架中的功能。在unittest框架中:

    TestCase(测试用例):对应功能模块里一条条用例

    TestSuite (测试套件)多个测试用例集合在一起,就是TestSuite,就是一个功能模块的所有用例放这里了

    TestLoader:是用来加载TestCase到TestSuite中。

    TestRunner(测试运行器):是来执行测试用例的,测试的结果会保存到TestResult实例中,包括运行了多少测试用例,成功了多少,失败了多少等信息
    import unittest #导入unittest模块
    
    class mytest1(unittest.TestCase): #定义测试用例的类
    
        def test1(self): #定义测试用例,测试用例必须以test开头,否则不会识别为测试用例
            self.assertEqual(1,1) #测试用例断言,比较预期结果与实际结果,这里1==1,显然结果是pass
    
        def test2(self):
            self.assertEqual(2,1) #测试用例断言,比较预期结果与实际结果,这里2==1,显然结果是fail
    
    class mytest2(unittest.TestCase):  #定义测试用例的类
    
        def test4(self):
            self.assertEqual(1,1)
    
        def test5(self):
            self.assertEqual(3,2)
    if __name__=='__main__':
     suite=unittest.TestSuite() #定义一个测试套件
     suite.addTest(unittest.makeSuite(mytest1)) #向测试套件里新增这个类下的所有测试用例
     suite.addTest(unittest.makeSuite(mytest2))
    
     unittest.TextTestRunner(verbosity=2).run(suite) #运行测试用例

    测试结果:在测试结果中,我们运行的测试用例情况。成功了多少,失败了多少。失败的原因。

     

    上述写法,会在命令行显示测试结果。单元测试结束后,可以通过HTMLTestRunner生成HTML测试报告,即便于阅读,也美观。使用HTMLTestRunner模块就可以将测试报告结果以HTML页面的形式展现出来。上述代码调整如下:(红色字体部分为调整部分)

    import unittest #导入unittest模块
    import HTMLTestRunner
    class mytest1(unittest.TestCase): #定义测试用例的类
    
        def test1(self): #定义测试用例,测试用例必须以test开头,否则不会识别为测试用例
            self.assertEqual(1,1) #测试用例断言,比较预期结果与实际结果,这里1==1,显然结果是pass
    
        def test2(self):
            self.assertEqual(2,1) #测试用例断言,比较预期结果与实际结果,这里2==1,显然结果是fail
    
    class mytest2(unittest.TestCase):  #定义测试用例的类
    
        def test4(self):
            self.assertEqual(1,1)
    
        def test5(self):
            self.assertEqual(3,2)
    if __name__=='__main__':
    
     suite=unittest.TestSuite() #定义一个测试套件
     suite.addTest(unittest.makeSuite(mytest1)) #向测试套件里新增这个类下的所有测试用例
     suite.addTest(unittest.makeSuite(mytest2))
    
     #unittest.TextTestRunner(verbosity=2).run(suite) #运行测试用例 
     filename="E:\UTesting.html"
     fp=open(filename,'wb')
     runner=HTMLTestRunner.HTMLTestRunner(stream=fp,title='zwh UTesting report',description='the report is test!!')
     runner.run(suite)
    

      在E盘,我们会发现生成的测试报告:UTesting.html

  • 相关阅读:
    怎么用javascript进行拖拽[zt]
    FireFox不支持disableoutputescaping(zt)
    xslt中的Javascript取得xml中的参数
    因为查询无法同时更新聚集键和 text、ntext 或 image 列
    FireFox下操作IFrame
    xslt中formatnumber()
    linuxgrepregular expression(regex)
    pl/sqlescape& quotation
    linuxsed command
    linuxfind command(transferred)
  • 原文地址:https://www.cnblogs.com/benpao1314/p/9627468.html
Copyright © 2020-2023  润新知