zoukankan      html  css  js  c++  java
  • python与selenium自动化基础-unittest

    unittest简单使用

    1.unittest.main()运行时,框架自动寻找TestCase子类,并且运行
    2.在TestCase类中,只把以test开头的方法当做测试用例,然后执行
    3.setUp()用于初始化一些参数,在测试用例执行前自动被调用,tearDown()用于清理,在测试用例执行后被调用

    # 导入unittest模块
    import unittest
    
    # 继承TestCase类,TestCase类是测试用例类
    class Test1(unittest.TestCase):
        def setUp(self):
            print('hello')
    
        def tearDown(self):
            print('bye')
    
        def test_001(self):
            print('001')
    
        def test_002(self):
            print('002')
    
        def test_003(self):
            print('003')
    
    # class Test2(unittest.TestCase):
    #
    #     def test_001(self):
    #         print('201')
    #
    #     def test_002(self):
    #         print('202')
    
    if __name__ == '__main__':
        unittest.main()

    1.通过继承unittest.TestCase进行编写,继承unittest.TestCase的类会被框架识别为测试用例。
    2.setUp和TearDown是用于事前和事后做相关处理动作的,就是前面说的Test Fixture,会在每个测试用例运行前后被框架自动调用
    3.所有以test开头的方法会被框架自动识别为测试用例,并自动调用执行,不是以test开头的不会被调用
    4.unittest.main()是最简单的测试执行方式
    5.调用unittest.main()方法后,继承自unittest.TestCase类的类会被自动识别为测试用例并且被调用。

    # 导入unittest模块
    import unittest
    
    # 继承TestCase类,TestCase类是测试用例类
    class Test1(unittest.TestCase):
        def setUp(self):
            print('hello')
    
        def tearDown(self):
            print('bye')
    
        def test_001(self):
            print('001')
    
        def test_002(self):
            print('002')
    
        def test_003(self):
            print('003')
    
    if __name__ == '__main__':
        # 创建测试套件
        suit = unittest.TestSuite()
        # 定义一个测试用例列表
        case_list= ['test_001','test_002','test_003']
        for case in case_list:
            suit.addTest(Test1(case))
    
        # 运行测试用例,verbosity=2为每一个测试用例输出报告,run的参数是测试套件
        unittest.TextTestRunner(verbosity=2).run(suit)

    unittest断言

    断言是测试用例的核心。我们使用assertEqual()来判断预期结果,用assertTrue()和assertFalse来做是非判断。
    assertEqual(value1,value2)     value1:期望的值,value2:实际的值

    import unittest
    
    class Test(unittest.TestCase):
        def setUp(self):
            print('start')
    
        def tearDown(self):
            print('bye')
    
        def test_001(self):
            self.assertEqual('1','1')
    
        def test_002(self):
            self.assertEqual('1','0')
    
    if __name__ == '__main__':
        unittest.main()

  • 相关阅读:
    技术收集
    Entity Framework的扩展库
    暂时收集
    php 处理高并发的思路
    nginx缓存优先级(缓存问题者必看)
    mysql5.5主从配置
    php源码编译常见错误解决方案
    今天开始要改变模式了
    nrpe 在ubuntu上安装遇到的问题
    zendstudio 10下载汉化
  • 原文地址:https://www.cnblogs.com/peiya/p/13499247.html
Copyright © 2011-2022 走看看