自动化测试神器 之 python unittest 断言

北慕城南 提交于 2020-03-18 11:58:06

  自动化测试的最后一步需要判断结果是否正确,而正确设置断言可以帮助判断测试用例的执行结果,从而提高自动化测试的效率,python unittest  提供了一个比较完整的断言方法。unittest框架测试框架提供的方法比较多,而且很多方法在自动化测试的时候不会使用到,所以我这边总结一下我认为比较常用的测试方法,用最直白的话解释了一下。

 

序号 方法 解释
1 assertEqual(a, b) 判断ab是否相等
2 assertNotEqual(a, b) 判断ab不相等
3 assertIs(a, b)  判断a是b
4 assertIsNot(a, b) 判断a不是b
5 assertIsNone(a) 判断a是不是None
6 assertIsNotNone(a) 判断a不是None
 7 assertIn(a,b) 判断a在b中,此时a与b可以相等
 8 assertNotIn(a, b) 判断a不在b中
 9 assertIsInstance(a, b) 判断a是否属于b的实例
 10 assertNotIsInstance(a, b) 判断a不属于b的实例 
 11 assertGreater(a, b) 判断a > b
 12 assertGreaterEqual(a, b) 判断a >= b 
 13 assertLess(a, b) 判断a < b 
 14 assertLessEqual(a, b) 判断a <= b 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. 首先导入unittest模块 ;
  2. 创建一个测试类,继承TestCase;
  3. 定义setUp和tearDown方法;
    • setUp是进行测试前的初始化工作。
    • tearDown是测试后的清除工作。
  4. 创建测试用例,测试用例需要以test开头,每个测试用例,测试目的和测试内容应很明确。通过调用断言来判断程序执行结果和预期值是否相符。
  5. 调用unittest.main()启动测试。

 

#-*- coding:utf-8 -*-
import unittest 

class WANGYI(unittest.TestCase):
    def setUp(self):
        self.verifyString = 'test'

    def test01(self):
        '''测试方法'''
        self.assertEqual('test',self.verifyString,msg='两个值不相等')  #msg 定义出错信息


    def tearDown(self):
        pass

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

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!