zoukankan      html  css  js  c++  java
  • unittest前置条件、后置条件、装饰器、断言

    一、前置和后置

    1.setUp:在写测试用例的时候,每次操作其实都是基于打开浏览器输入对应网址这些操作,这个就是执行用例的前置条件。

    2.tearDown:执行完用例后,为了不影响下一次用例的执行,一般有个数据还原的过程,这就是执行用例的后置条件。

    3.前置和后置都是非必要的条件,如果没有也可以写pass

    import unittest,time,ddt
    class Test(unittest.TestCase):  # 定义一个测试的类,并继承unittest.TestCase这个类
        @classmethod  # 装饰器,所有用例执行前执行一次
        def setUpClass(cls):  
            print("start!")
    
        @classmethod  # 装饰器,所有用例执行后执行一次
        def tearDownClass(cls):
            time.sleep(1)
            print("end!")
    
        def setUp(self):  # 每条用例执行前执行一次
            print("开始")
    
        def tearDown(self):  # 每条用例执行后执行一次
            print("结束")
    
        def test01(self):  # 测试用例的名称以test开头,每条函数相当于一条测试用例
            print("执行测试用例01")
            a = 1
            b = 1
            self.assertEqual(a, b) # 判断a和b是否相等
    
        def test03(self):
            print("执行测试用例03")
            a = "8"
            b = "hello world!"
            self.assertIn(a, b)  # 判断a是否在b中
    
        def test02(self):
            print("执行测试用例02")
            a = True
            self.assertTrue(a)  # 判断a是True
    if __name__=="__main__":
    
        unittest.main(verbosity=2)
        # runner = unittest.TextTestRunner()
        # runner.run()
    运行结果如下:
      test01 (__main__.Test) ... ok
      test02 (__main__.Test) ... ok
      test03 (__main__.Test) ... FAIL
      start!
      开始
      执行测试用例01
      结束
      开始
      执行测试用例02
      结束
      开始
      执行测试用例03
      结束
      end!

    二、装饰器

    1、setUp与setUpClass区别

       setup():每个测试case运行前运行
       teardown():每个测试case运行完后执行
       setUpClass():必须使用@classmethod 装饰器,所有case运行前只运行一次
       tearDownClass():必须使用@classmethod装饰器,所有case运行完后只运行一次

    2、@是修饰符,classmethod是python里的类方法

  • 相关阅读:
    git 多个commit合并一个
    前端本地proxy跨域代理配置
    .net core指定环境类型
    使用流程引擎整体解决方案
    通用流程相关方法说明及调用事例
    流程引擎及流程设计器的嵌入方式
    可视化流程设计——流程设计器演示(基于Silverlight)
    通用流程设计
    动态网站后台解决方案
    timestamp时间格式
  • 原文地址:https://www.cnblogs.com/jialeliu/p/14115081.html
Copyright © 2011-2022 走看看