当前位置: 首页 > 图灵资讯 > 行业资讯> Python之assert断言介绍

Python之assert断言介绍

发布时间:2025-10-14 17:54:40

在python自动化测试中寻找元素并进行操作。如果很容易找到元素,我相信每个人都可以熟练地编写用例脚本,但单独操作可能不够,有时需要判断预期的结果。

常用

这里介绍一些常用的断言使用方法,可以在一定程度上帮助你判断预期的结果。-

assertEqual

assertNotEqual

assertTrue

assertFalse

assertIsNone

assertIsNotNone

assertEqual 和 assertNotEqual

assertEqual:如果两个值相等,则passs

assertNotEqual:如果两个值不相等,则passs

使用方法:

assertEqual(first,second,msg)其中,first与second进行比较,如果相等,则通过;msg是失败时打印的信息,选择填写;断言assertnotequal可以反向使用。

asserttrue和assertFalse

assertTrue:判断bool值为True,则passs

assertFalse:如果判断bool值为False,则Passs

使用方法:

assertTrue(expr,msg)express输入相应的表达式,如果表达式是真实的,则pass;msg选填;断言assertFalse如果表达式为假,则passs

assertisnone和assertIsNotNone

assertIsNone:不存在,则pass

assertIsNotNone:存在,则pass

使用方法:

assertIsNone(obj,msg)检查某一元素是否存在

相关推荐:Python视频教程

总结:

常用

assertEqual(a,b)a==b
assertNotEqual(a,b)a!=b
assertTrue(x)bool(x)isTrue
assertFalse(x)bool(x)isFalse
assertIs(a,b)aisb2.7
assertIsNot(a,b)aisnotb2.7
assertIsNone(x)xisNone2.7
assertIsNotNone(x)xisnotNone2.7
assertIn(a,b)ainb2.7
assertNotIn(a,b)anotinb2.7
assertIsInstance(a,b)isinstance(a,b)2.7
assertNotIsInstance(a,b)notisinstance(a,b)2.7

其它

assertAlmostEqual(a,b)round(a-b,7)==0
assertNotAlmostEqual(a,b)round(a-b,7)!=0
assertGreater(a,b)a>b2.7
assertGreaterEqual(a,b)a>=b2.7
assertLess(a,b)a<b2.7
assertLessEqual(a,b)a<=b2.7
assertRegexpMatches(s,re)regex.search(s)2.7
assertNotRegexpMatches(s,re)notregex.search(s)2.7
assertItemsEqual(a,b)sorted(a)==sorted(b)andworkwithunhahableobjs2.7
assertDictContainsSubset(a,b)allthekey/valuepairsinaexistinb2.7
assertMultiLineEqual(a,b)strings2.7
assertSequenceEqual(a,b)sequences2.7
assertListEqual(a,b)lists2.7
assertTupleEqual(a,b)tuples2.7
assertSetEqual(a,b)setsorfrozens22s.7
assertDictEqual(a,b)dicts2.7
assertMultiLineEqual(a,b)strings2.7
assertSequenceEqual(a,b)sequences2.7
assertListEqual(a,b)lists2.7
assertTupleEqual(a,b)tuples2.7
assertSetEqual(a,b)setsorfrozens22s.7asertDictEqual(a,b)dicts2.7

使用时机:

那么我们什么时候应该使用断言呢?如无特殊目的,断言应用于以下情况:

(1)防御编程

(2)运行时检测程序逻辑

(3)合同检查(如前置条件、后置条件)

(4)程序中的常量

(5)检查文件

(6)例:在防御编程中添加断言

开始在代码中添加注释是一个很好的开始,但人们不喜欢阅读和更新这些注释,它们很快就会过时。但对于断言,我们可以同时编写代码文档,如果这些断言被违反,它将直接导致一个简单和直接的失败。

asserttargetin(x,y,z)
iftarget==x:
run_x_code()
eliftarget==y:
run_y_code()
else:
asserttarget==z
run_z_code()

相关文章

Python之assert断言介绍

Python之assert断言介绍

2025-10-14
Python MySQL callproc方法:调用数据库存储过程

Python MySQL callproc方法:调用数据库存储过程

2025-10-14
Python之可迭代对象、迭代器、生成器

Python之可迭代对象、迭代器、生成器

2025-10-14
什么是线程(多线程),Python多线程的好处

什么是线程(多线程),Python多线程的好处

2025-10-14
Python之什么叫面向对象

Python之什么叫面向对象

2025-10-14
Python创建线程

Python创建线程

2025-10-14