测牛学堂:软件测试python学习之unitTest断言总结
创始人
2024-05-28 23:40:41

unitTest断言

断言,让程序代替认为判断测试程序执行结果是否符合预期结果的过程。
断言使用可以提高测试效率,实现自动化测试。

常用的断言

断言有很多,但是我们常用的先学习了解两个即可。
1 assertEqual(预期结果,实际结果)
判断预期结果和实际结果是否相等。如果相等,用例通过。
如果不相等,抛出异常,用例不通过。
2 assertIn(预期结果,实际结果)
判断预期记过是否包含在实际结果中。如果存在,用例通过。
如果不存在,抛出异常,用例不通过。
代码示例:

import unittestclass TestAssert(unittest.TestCase):def test_demo1(self):self.assertEqual(10, 10)def test_demo2(self):self.assertEqual(10, 20)def test_demo3(self):self.assertIn('xiaoming','nihao,xiaoming')

注意,测试用例的两个参数,都是后面是否等于前面,后面是否包含前面。

unitTest中的参数化

通过参数化,可以用参数的方式来传递数据,从而实现数据和脚本分离。并且可以实现用例的重复执行。
unitTest本身不提供参数化的功能,通过第三方插件parameterized实现。
1 安装第三方插件:

pip install parameterized

2 导包
3 修改测试方法,将测试方法中的测试数据使用变量表示
4 组织测试数据,格式用元组的形式,一个元组就是一组测试数据
5 测试方法中使用装饰器进行参数化
代码示例:

import unittest
from parameterized import parameterizeddef add(a, b):return a + btestData = [(3, 1, 2), (4, 2, 2), (10, 4, 6)]class TestAdd(unittest.TestCase):@parameterized.expand(testData)def test_add(self,result, a, b ):self.assertEqual(result, add(a, b))if __name__ == '__main__':unittest.main()

相关内容

热门资讯

苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...