• 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

  • 相关阅读:
    freebsd ports update url
    Cisco交换机里IP和MAC地址互查找出对应端口
    实现不同vlan间的相互通信方法一:单臂路由
    文件共享③Samba实例
    RHEL6基础四十九之RHEL文件(夹)权限进阶篇
    windows下查找指定端口被哪个程序占用
    DNSmasq – 配置DNS和DHCP
    dnsmasq多vlan配置
    dnsmasq.conf 配置
    windows2003 DHCP中批处理绑定IP与MAC
  • 原文地址:https://www.cnblogs.com/101718qiong/p/7999135.html
Copyright © 2020-2023  润新知