zoukankan      html  css  js  c++  java
  • Python学习笔记:Unittest框架了解

      Unittest单元测试框架不仅可以适用于单元测试,还可以适用于自动化测试用来的开发与执行,该测试框架可执行测试用例,并提供丰富的断言方法,最终生成测试报告。

    一、Unittest常用方法

    1TestCase

      TestCase类,所有测试用例类继承的基本类

      如:

      

    2main()

      使用它可以方便的将一个单元测试模块变为可直接运行的测试脚本,main()方法可以使用TestLoader类来搜索所有包含在该模块中以“test”开头命名的方法,并且执行他们。执行的默认顺序是根据ASCII码的顺序加载测试用例并执行。

    3TestSuite()

      unittest框架的TestSuite()类是用来创建测试套件的。

    4TextTextRunner()

      unittest框架的TextTextRunner()类,通过该类下的run()方法来运行TestSuite所包含的测试用例,参数为TestSuite名称。

    5defaultTestLoader()

      通过该类下面的discover()方法根据测试目录start_dir匹配查找测试用例文件,并将查找到的测试用例组装到测试套件中,也可以直接使用run()方法执行discover

    6skip()

      装饰器,可用装饰器暂时屏蔽不执行的测试用例。(调试某一个测试用例时,可以使用装饰器屏蔽掉其他的测试用例)

      (1@unittest.skip(reason):无条件跳过添加装饰器的测试,并说明跳过测试的原因

      (2@unittest.skipIf(condition,reason):条件为真时,跳过添加装饰器的测试,并说明跳过测试的原因

      (3@unittest.skipUnless(condition,reason):条件未假时,跳过测试并说明跳过测试的原因。

      (4@unittest.expectedFailure():测试标记为失败。

    二、TestCase类的常用属性

    1setUp()

      方法用于测试用例执行前的初始化工作。如测试用例需要访问数据库,可以在setUp中建立数据库链接并初始化。

    2tearDown()

      用于测试用例执行后的善后工作。如关闭数据库链接等

    3assert*()

      断言方法,在执行测试用例时,最终用例是否执行通过,是通过判断实际结果与预期结果是否相等决定的。

      (1assertEqual(a,b,msg):判断ab是否相等,相等测试用例通过;不相等测试用例失败,msg为失败时的提示信息。

      (2assertNotEqual(a,b,msg):判断ab是否相等,不相等时测试用例通过;相等时测试用例失败,msg为测试失败的提示信息。

      (3assertTrue(x,msg):判断x是否为True,是True测试用例通过,否则失败,msg为失败的提示信息。

      (4assertFalse(x,msg):判断x是否为False,是False时测试用例通过,否则失败,msg为失败的提示信息。

      (5assertIs(a,b,msg):判断a是不是b,是则通过,否则失败

      (6assertNotIs(a,b,msg):判断a不是b,不是通过,否则不通过

      (7assertIsNone(x,msg):判断x是否是None,是None测试用例通过

      (8assertIsNotNone(x,msg):判断x是否是None,不是None测试用例通过

      (9assertIn(a,b,msg):判断ab中,在则通过

      (10assertNotIn(a,b,msg):判断ab中,不在则通过

      (11assertIsInstance(a,b,msg):判断ab的一个实例,是则通过

      (12assertIsNotInstance(a,b,msg):判断ab的一个实例,不是则通过

    三、TestSuite类的主要属性

      addTest()addTest()方法是将测试用例添加到测试套件中。

      如:

    四、TextTextRunner的常用属性

      run()run()方法是运行测试套件中的测试用例

      如:

     

    五、defaultTestLoader()的常用属性

      discover()方法根据测试目录start_dir匹配查找测试用例文件

      如:discover(start_dir,pattern='',top_level_dir=None)

      start_dir:要测试的模块名或测试用例目录;

      pattern='':表示用例文件名的匹配原则;

      top_level_dir=None:测试模块的顶层目录;

  • 相关阅读:
    AspDotNetStorefront客户化开始
    "超时时间已到。在操作完成之前超时时间已过或服务器未响应。"另一个原因
    转:只打开一个窗口和关闭窗口而不出现提示
    .net 数据格式设置
    SQLServer导出数据表中数据的存储过程
    游标、临时表、嵌套游标使用一列
    转:将图片转换成16进制的代码写入文本
    根据文件后缀返回Http的ContentType类型的函数
    正确配置p6spy后没有日志输出的一个可能的原因
    C99 声明 + 表达式 + 词法 部分Grammar
  • 原文地址:https://www.cnblogs.com/smallstone2018/p/10072557.html
Copyright © 2011-2022 走看看