zoukankan      html  css  js  c++  java
  • 单元测试-unitetest-learn note 2

    概念解释

    Python中有一个自带的单元测试框架是unittest模块,用它来做单元测试,它里面封装好了一些校验返回的结果方法和一些用例执行前的初始化操作。介绍相关的杰哥概念

    TestCase :也就是测试用例

    TestSuite :多个测试用例集合在一起,就是TestSuite

    TestRunner:测试的执行是单元测试非常重要的概念,一般单元测试框架会提供丰富的执行策略和执行结果,在unittest 单元测试框架中,通过TextTestRunner类提供的run()方法来执行 test suite/test case 。 test runner 可以使用图形界面、文本界面,或返回一个特殊的值等方式来表示测试结果

    Test Fixture:搭建和销毁测试用例环境,就是一个 fixture,通过覆盖TestCase的setUp()和tearDown()方法来实现

    import unittest
    class TestStringMethods(unittest.TestCase): # 继承unittest.TestCase
        # 每个测试用例执行之前做操作
        def setUp(self):
            print ('test start')
    
        def test_upper(self):     # 测试用例
            self.assertEqual('foo'.upper(), 'FOO','1111')
    
        def test_isupper(self):    # 测试用例
            self.assertTrue('FOO'.isupper(),'333')
            self.assertFalse('FOo'.isupper(),'4444')
    
        # 每个测试用例执行之后做操作
        def tearDown(self):
            print ('test end')
    if __name__=="__main__":
        unittest.main()   #运行所有的测试用例

    unittest  main() 方法使用TestLoader类来搜索所有包含在该模块中以'test'命名开头的测试方法,并自动执行他们

    构造测试集

    if __name__=="__main__":
        #构造测试集
        suite=unittest.TestSuite()
        suite.addTest(TestStringMethods("test_upper"))
    
        #执行测试
        runner=unittest.TextTestRunner()
        runner.run(suite)

     断言方法:

    Method

    Checks that

    New in

    assertEqual(a, b)

    == b

     

    assertNotEqual(a, b)

    != b

     

    assertTrue(x)

    bool(x) is True

     

    assertFalse(x)

    bool(x) is False

     

    assertIs(a, b)

    is b

    3.1

    assertIsNot(a, b)

    is not b

    3.1

    assertIsNone(x)

    is None

    3.1

    assertIsNotNone(x)

    is not None

    3.1

    assertIn(a, b)

    in b

    3.1

    assertNotIn(a, b)

    not in b

    3.1

    assertIsInstance(a, b)

    isinstance(a, b)

    3.2

    assertNotIsInstance(a, b)

    not isinstance(a, b)

    3.2

  • 相关阅读:
    Git修改用户名和提交的邮箱
    在vue项目中引入bootstrap
    自定义radio,使用图片进行切换(点击切换时,获取变量值)
    nodejs知识清单
    swoft源码研究
    Nginx变量查询
    mongodb索引
    mongodb数据备份:导入导出
    mongodb主从复制和分片
    mongodb服务安装
  • 原文地址:https://www.cnblogs.com/yan-2010/p/14247208.html
Copyright © 2011-2022 走看看