• Python 断言


    在 unittest 单元测试框架中,TestCase 类提供了一些方法来检查并报告故障,如下图 :

      上面所提供的断言方法(assertRaises(), assertRaisesRegexp()除外)接收 msg 参数,如果指定,
    将体作为失败的错误信息。

    1 try:
    2     num = input("Enter a number:")
    3     assert (num == 10), "The number is not 10!"
    4 except AssertionError,msg:
    5     print msg
    6     print ("Sadly, num not equals to 10")

      在上面的程序中,运行到的 python 的异常与断言。通过 raw_input()方法要求用户输入一个数字,通
    过 arrsert 判断用户输入的 num 是否等于 10 ; 通过 python 的 AssertionError 类型的异常来实捕获这
    个异常, msg 接收异常信息并打印, 注意, msg 所结构的异常信息是我们自定义的( "The number is not
    10!") 。

    assertEqual(first, second, msg=None)
    判断 first 和 second 的值是否相等,如果不相等则测试失败,msg 用于定义失败后所抛出的异
    常信息。

    assertNotEqual(first, second, msg=None)
    测试 first 和 second 不相等,如果相等,则测试失败。
    assertTure(expr,msg=None)
    assertFalse(expr,msg=None)
    测试 expr 为 Ture(或为 False)

    以下为 n python 2.7 版新增的断言方法:
    assertIs(first, second, msg=None)
    assertIsNot(first, second, msg=None)
    测试的 first 和 second 是(或 不是)相同的对象。
    assertIsNone(expr, msg=None)
    assertIsNotNone(expr, msg=None)
    测试 expr 是(或 不是)为 None
    assertIn(first, second, msg=None)
    assertNotIn(first, second, msg=None)
    测试 first 是(或不是)在 second 中。second 包含是否包含 first 。
    assertIsInstance(obj, cls, msg=None)
    assertNotIsInstance(obj, cls, msg=None)
    测试 obj 不(或 不是)cls 的一个实例。 (obj 和 cls 可以是一个类或元组) ,要检查他们的类型使
    用 assertIs(type(obj), cls)。
    更多断言方法请参考 python unittest 文档。

  • 相关阅读:
    零侵入性:循环重试功能
    Service有多个实现类,它怎么知道该注入哪个ServiceImpl类
    消息队列经典
    MyBatisplus
    图片存储服务器上
    Spring Boot 保护敏感配置的 4 种方法
    微服务组件
    Optional 实例
    date s 更改时间后不生效
    java运行时 报错 Error: Could not find or load main class test
  • 原文地址:https://www.cnblogs.com/344525813xiang/p/6594174.html
Copyright © 2020-2023  润新知