我正在研究Exercise49ofLearnRubytheHardWay练习要求为提供的每个函数编写单元测试。我正在测试的项目之一是是否引发了适当的异常。建议我们为此使用assert_raise。这是我正在测试的代码:classParserError下面是函数parse_verb的测试:deftest_parse_verblist_one=[Pair.new(:verb,'go'),Pair.new(:noun,'king')]assert_equal(parse_verb(list_one),Pair.new(:verb,'go'))list_two=[Pair.new(:noun,
Python2.7unittestdocs说:Alltheassertmethods(exceptassertRaises(),assertRaisesRegexp())acceptamsgargumentthat,ifspecified,isusedastheerrormessageonfailure...但是如果我想为assertRaises()或assertRaisesRegexp()指定错误消息怎么办?用例:在循环中测试各种值时,如果一个失败,我想知道是哪个:NON_INTEGERS=[0.21,1.5,23.462,math.pi]classFactorizerTestCas
我从python.orgunittest文档中逐字复制了这个:importrandomimportunittestclassTestSequenceFunctions(unittest.TestCase):defsetUp(self):self.seq=range(10)deftest_shuffle(self):#makesuretheshuffledsequencedoesnotloseanyelementsrandom.shuffle(self.seq)self.seq.sort()self.assertEqual(self.seq,range(10))#shouldraisea
我有一个生成器对象,我想对其进行单元测试。它经历了一个循环,当循环结束时某个变量仍然为0时,我引发了一个异常。我想对此进行单元测试,但我不知道如何进行。以这个示例生成器为例:classExample():defgeneratorExample(self):count=0forintinrange(1,100):count+=1yieldcountifcount>0:raiseRuntimeError,'anexampleerrorthatwillalwayshappen'我想做的是classtestExample(unittest.TestCase):deftest_generator
我正在尝试测试异常。我有:deftest_set_catch_status_exception(self):mro=self.mroNEW_STATUS='Nosuchstatus'self.assertRaises(ValueError,mro.setStatus(NEW_STATUS))我收到以下错误:======================================================================ERROR:test_set_catch_status_exception(__main__.TestManagementReviewGoalG
我正在尝试测试异常。我有:deftest_set_catch_status_exception(self):mro=self.mroNEW_STATUS='Nosuchstatus'self.assertRaises(ValueError,mro.setStatus(NEW_STATUS))我收到以下错误:======================================================================ERROR:test_set_catch_status_exception(__main__.TestManagementReviewGoalG
这个问题在这里已经有了答案:HowdoyoutestthataPythonfunctionthrowsanexception?(19个回答)关闭4年前。谁能告诉我为什么下面的单元测试在test_bad中的ValueError,而不是用assertRaises捕获它并成功?我想我使用了正确的程序和语法,但ValueError没有被捕获。我在linux机器上使用Python2.7.5。这是代码……importunittestclassIsOne(object):def__init__(self):passdefis_one(self,i):if(i!=1):raiseValueErrorc
这个问题在这里已经有了答案:HowdoyoutestthataPythonfunctionthrowsanexception?(19个回答)关闭4年前。谁能告诉我为什么下面的单元测试在test_bad中的ValueError,而不是用assertRaises捕获它并成功?我想我使用了正确的程序和语法,但ValueError没有被捕获。我在linux机器上使用Python2.7.5。这是代码……importunittestclassIsOne(object):def__init__(self):passdefis_one(self,i):if(i!=1):raiseValueErrorc
我有一个类:classMyClass:def__init__(self,foo):iffoo!=1:raiseError("fooisnotequalto1!")并且应该确保传递给构造函数的不正确参数正确引发错误的单元测试:deftestInsufficientArgs(self):foo=0self.assertRaises((Error),myClass=MyClass(Error,foo))但是我明白了……NameError:globalname'Error'isnotdefined为什么?我应该在哪里定义这个错误对象?我以为它是作为默认异常类型内置的,不是吗?
我有一个类:classMyClass:def__init__(self,foo):iffoo!=1:raiseError("fooisnotequalto1!")并且应该确保传递给构造函数的不正确参数正确引发错误的单元测试:deftestInsufficientArgs(self):foo=0self.assertRaises((Error),myClass=MyClass(Error,foo))但是我明白了……NameError:globalname'Error'isnotdefined为什么?我应该在哪里定义这个错误对象?我以为它是作为默认异常类型内置的,不是吗?