我想測試是否引發異常我該怎麼做?測試是否引發ValidationError
在我的models.py我有這個功能,一個我想測試:
def validate_percent(value):
if not (value >= 0 and value <= 100):
raise ValidationError('error')
在我tests.py我嘗試這樣做:
def test_validate_percent(self):
self.assertRaises(ValidationError, validate_percent(1000))
測試的輸出:
..E
======================================================================
ERROR: test_validate_percent (tm.tests.models.helpers.HelpersTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/...py", line 21, in test_validate_percent
self.assertRaises(ValidationError, validate_percent(1000))
File "/....py", line 25, in validate_percent
raise ValidationError(u'error' % value)
ValidationError: ['error']
注意,在Python您的驗證檢查應寫入'如果不爲0 <=值<= 100' 。 – 2013-04-25 12:57:53