zoukankan      html  css  js  c++  java
  • pytest初始化与清除(一)

    一.初始化函数

      1.测试用例级别:def setup()

      2.套件级别(在模块文件中定义):def setup_module()

      3.套件级别(在类中定义): @classmethod

                  def setup_class()

    二.清除函数

      1.测试用例级别:def teardown()

      2.套件级别(在模块文件中定义):def teardown_module()

      3.套件级别(在类中定义):@classmethod

                     def teardown_class()

    三.代码示例1(模块文件中定义测试用例级别)

    from api.compare_result import CompareResult
    from api.gy import gy_v4
    
    def test_gy1():
        inputxml1 = 'C:/Users/cale/checkapi/data/input/gyopt.xml'
        outputxml1 = 'C:/Users/cale/checkapi/data/output/gyopt.xml'
        cmpr=CompareResult()
        cmpr.compareXML(gy_v4,inputxml1,outputxml1)
    
    def test_gy2():
        inputxml2 = 'C:/Users/cl/checkapi/data/input/gyipt.xml'
        outputxml2 = 'C:/Users/cl/checkapi/data/output/gyipt.xml'
        cmpr2=CompareResult()
        cmpr2.compareXML(gy_v4,inputxml2,outputxml2)
    
    def setup():
        print("执行测试用例前会先执行此方法")
    
    def teardown():
        print('执行完测试用例后会执行此方法')

    执行结果:

     结论:测试用例级别的套件,初始化清除的功能作用于每一个测试用例

    代码示例2(模块文件中定义测试套件级别)

    from api.compare_result import CompareResult
    from api.gy import gy_v4
    
    def test_gy1():
        inputxml1 = 'C:/Users/cale/checkapi/data/input/gyopt.xml'
        outputxml1 = 'C:/Users/cale/checkapi/data/output/gyopt.xml'
        cmpr=CompareResult()
        cmpr.compareXML(gy_v4,inputxml1,outputxml1)
    
    def test_gy2():
        inputxml2 = 'C:/Users/cl/checkapi/data/input/gyipt.xml'
        outputxml2 = 'C:/Users/cl/checkapi/data/output/gyipt.xml'
        cmpr2=CompareResult()
        cmpr2.compareXML(gy_v4,inputxml2,outputxml2)
    
    def setup_module():
        print("执行测试套件前会先执行此方法")
    
    def teardown_module():
        print('执行完测试套件后会执行此方法')

    执行结果:

     代码示例3(类中定义测试套件级别,注意方法名的改变)

    from api.compare_result import CompareResult
    from api.gy import gy_v4
    
    class TestSuite():
        def test_gy1(self):
            inputxml1 = 'C:/Users/cale/checkapi/data/input/gyopt.xml'
            outputxml1 = 'C:/Users/cale/checkapi/data/output/gyopt.xml'
            cmpr=CompareResult()
            cmpr.compareXML(gy_v4,inputxml1,outputxml1)
    
        def test_gy2(self):
            inputxml2 = 'C:/Users/cl/checkapi/data/input/gyipt.xml'
            outputxml2 = 'C:/Users/cl/checkapi/data/output/gyipt.xml'
            cmpr2=CompareResult()
            cmpr2.compareXML(gy_v4,inputxml2,outputxml2)
    
        @classmethod
        def setup_class(self):
            print("执行测试套件前会先执行此方法")
    
        @classmethod
        def teardown_class(self):
            print('执行完测试套件后会执行此方法')

    结果:

        

  • 相关阅读:
    【python进阶】哈希算法(Hash)
    【数据库】MongoDB操作命令
    【数据库】MongoDB安装&配置
    【python基础】元组方法汇总
    【python基础】集合方法汇总
    滴水穿石-04Eclipse中常用的快捷键
    滴水穿石-03一道面试题引发的思考
    滴水穿石-02制作说明文档
    滴水穿石-01JAVA和C#的区别
    步步为营101-同一个PCode下重复的OrderNumber重新排序
  • 原文地址:https://www.cnblogs.com/pipile/p/12618206.html
Copyright © 2011-2022 走看看