接口自动化-unittest断言方法

一、简介:

在写接口自动化脚本,不能只是针对于当前的结果进行编写,还需要考虑到的接口响应的结果是否和预期一致,如状态码,数据准确性等。确保写的脚本运行覆盖全面,在unittest里面,包含了针对于结果进行判断pass or fail的方法;这种生成测试结果的方法被称之为-断言

二、基本断言:接口自动化-unittest断言方法1)如:assertEqual (判断两个值是否相等)

这里的两个值不一样,所以报错

接口自动化-unittest断言方法
2)修改两个值为相同后,运行结果:

接口自动化-unittest断言方法

2.   1)assertEqual(判断值是否包含)接口自动化-unittest断言方法
2)当不包含时:

接口自动化-unittest断言方法

只举了部分例子,因为其他的断言方法,使用也是如此(如表格),只是不同的判断条件对应不同的判断方法

补充一些常用的断言方法:

self.assertEqual(a,b,msg=msg) #判断a与.b是否一致,msg类似备注,可以为空

self.assertNotEqual(a,b,msg=msg) #判断a与.b是否不一致

self.assertTrue(a,msg=none) #判断a是否为true

self.assertFalse(b,msg=none)# 判断a是否为false

self.assertIn(a,b)   #判断b是否包含a,如截图举例

self.assertNotIn(a,b)   #判断b是否不包含a

self.assertNotIs(a,b) 判断a与b的对象是不是不相同,不成立则true。成立则false

self.assertDictEqual(a,b) #判断字典a和字典b是否相等,a,b为字典

self.assertItemsEqual(a,b) #比较两字符串是否一致,同sorted(a)==sorted(b)

self.assertMultiLineEqual(a,b) #比较a文本与b文本是否一致,即便多了个换行,也会区分

self.assertLess(a,b) #判断a<b成立则通过,否则失败

self.assertLessEqual(a,b) #判断a<=b成立则通过,否则失败

self.assertGreaer #判断a>b成立则通过,否则失败

self.assertGreaterEqual #判断a>=b成立则通过,否则失败

self.assertIsInstanse(a,b) #判断a的数据类型是不是为b,is instance(a,b)成立则通过,否则失败

self.assetNotIsInstance(a,b) #判断a的数据类型是不是不为b,not is instance(a,b)成立则通过,否则失败