python教程分享Python中unittest的断言方法详解

目录
  • 断言方法:
  • 方法有:
  •  下面是做的例子,后边是运行结果:
  • 总结

断言方法:

        是unittest提供的一组方法,可以通过这些方法完成期望结果和实际结果的对比

方法有:

assert+空格+要判断的语句+逗号+'报错语句'        python提供

assertequal(a,b,msg='报错语句')        若a==b不报错,否则报错内容为msg

assertnotequal(a,b,msg='报错语句')        若a!=b不报错,否则报错内容为msg

assertin(a,b,msg='报错语句')        若a in b不报错,否则报错内容为msg

assertnotin(a,b,msg='报错语句')        若a not in b不报错,否则报错内容为msg

asserttrue(a,msg='报错语句')        a为表达式,若a成立不报错,否则直接报错

assertfalse(a,msg='报错语句')        a为表达式,若a不成立不报错,否则直接报错

assertisinstance(obj,cls,msg='报错语句')        obj是cls的一个实例,是则不报错,否则直接报错

assertnotisinstance(obj,cls,msg='报错语句')        obj不是cls的一个实例,不是不报错,否则直接报错

assertisnone(a,msg='报错语句')       a为none不报错,否则直接报错

assertnotisnone(a,msg='报错语句')       a不为none不报错,否则直接报错

 下面是做的例子,后边是运行结果:

        运行结果显示:

        ok和'.'代表开发和测试的代码无问题

        f(fail)开发代码有问题,测试代码无问题

        e(error)测试代码有问题,开发代码不确定

assert 3 == 5, '错了'	# 错了  assert type(8) is int, '错了'	# 运行成功,不显示结果  assert id(9) is int, '错了'	# 错了  assert type(id(9)) is int, '错了'	# 运行成功,不显示结果  import unittest  class test(unittest.testcase):  	def setup(self):  		print('测试开始')  	def testequal(self):  		self.assertequal(10,100,msg = '错了')	# 错了  		self.assertequal('a','a',msg = '错了')	# ok  		self.assertnotequal('a','b',msg = '错了')	# ok  		self.assertin(1,[2,3,4,5],msg = '错了')	# 错了  		self.assertnotin('a',[2,3,4,5],msg = '错了')	# ok  		self.assertnotin('a',{'a':1},msg = '错了')	# 错了  		self.assertnotin(1,{'a':1},msg = '错了')	# ok     		self.asserttrue(6 == 6,msg = '错了')	# ok  		self.asserttrue(bool(3) is false,msg = '错了')	# 错了  		self.assertfalse(bool is false,msg = '错了')	# ok     		class people:  			print('我是人类')  		class dog:  			print('我是犬类')     		xiaoming = people()  		gouzi = dog()  		self.assertisinstance(gouzi,people,msg = '错了')	# 报错  		self.assertnotisinstance(xiaoming,people,msg = '错了')	# 报错  		self.assertnotisinstance(bool,int,msg = '错了')	# ok  		self.assertisinstance(false,int,msg = '错了')	# ok  		self.assertisinstance(3,bool,msg = '错了')	# 报错     		self.assertisnone(none,msg = '错了')	# ok  		self.assertisnone(0,msg = '错了')	# 报错  		self.assertisnone('',msg = '错了')	# 报错  		self.assertisnone(none,msg = '错了')	# ok     		def myfum():  			print('我是一个函数')  		self.assertisnone(myfum,msg = '错了')	# 报错  		self.assertisnone(myfum(),msg = '错了')	# ok  		self.assertisnone(print,msg = '错了')	# 报错  		self.assertisnone(print(),msg = '错了')	# ok  	def teardown(self):  		print('测试结束')     unittest.main()

总结

到此这篇关于python中unittest的断言方法详解的文章就介绍到这了,更多相关python unittest断言内容请搜索<猴子技术宅>以前的文章或继续浏览下面的相关文章希望大家以后多多支持<猴子技术宅>!

需要了解更多python教程分享Python中unittest的断言方法详解,都可以关注python教程分享栏目—猴子技术宅(www.ssfiction.com)

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/pythons/1031110.html

发表评论

邮箱地址不会被公开。 必填项已用*标注