unittest之断言

      在测试用例中,执行完测试用例后,最后一步是判断测试结果是 pass 还是fail,自动化测试脚本里面一般把这种生成测试结果的方法称为断言(assert)。
用 unittest 组件测试用例的时候,断言的方法还是很多的,下面介绍几种常用的断言方法:assertEqual、assertIn、assertTrue

1、案例:

# coding:utf-8
import unittest

class Test(unittest.TestCase):
    def test01(self):
        '''判断a=b'''
        a = 1
        b = 1
        self.assertEqual(a,b)

    def test02(self):
        '''判断ainb'''
        a = "hello"
        b = "hello world"
        self.assertIn(a,b)

    def test03(self):
        '''判断a is true'''
        a = True
        self.assertTrue(a)

    def test04(self):
        '''断言失败'''
        a = "anne"
        b = "hhhhhh"
        self.assertEqual(a,b)

if __name__ == "__main__":
    unittest.main()

  四个case中,最后一个会断言失败,执行结果如下:
/

2、自定义异常

1).以 assertEqual 为例分析:
assertEqual(self, first, second, msg=None)Fail if the two objects are unequal as determined by the '=='operator.
2).翻译:如果两个对象不能相等,就返回失败,相当于 return: first==second
3).这里除了相比较的两个参数 first 和 second,还有第三个参数 msg=None,这个 msg 参数就是遇到异常后自定义输出信息

3、unittest 常用的断言方法

1).assertEqual(self, first, second, msg=None)
--判断两个参数相等:first == second
2).assertNotEqual(self, first, second, msg=None)
--判断两个参数不相等:first != second
3).assertIn(self, member, container, msg=None)
--判断是字符串是否包含:member in container
4).assertNotIn(self, member, container, msg=None)
--判断是字符串是否不包含:member not in container
5).assertTrue(self, expr, msg=None)
--判断是否为真:expr is True
6).assertFalse(self, expr, msg=None)
--判断是否为假:expr is False
7).assertIsNone(self, obj, msg=None)
--判断是否为 None:obj is None
8).assertIsNotNone(self, obj, msg=None)
--判断是否不为 None:obj is not None

 

转载于:https://www.cnblogs.com/101718qiong/p/7999135.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值