UnitTest Framework Tutorial
UnitTest Framework Resources
Selected Reading
- Nose Testing - Tools
- Nose Testing - Framework
- UnitTest Framework - Py.test Module
- UnitTest Framework - Doctest API
- UnitTest Framework - Doctest
- UnitTest Framework - Signal Handling
- UnitTest Framework - Unittest2
- UnitTest Framework - Time Test
- UnitTest Framework - Exceptions Test
- UnitTest Framework - Skip Test
- UnitTest Framework - Test Discovery
- UnitTest Framework - Assertion
- UnitTest Framework - API
- UnitTest Framework - Framework
- UnitTest Framework - Overview
- UnitTest Framework - Home
UnitTest Framework Resources
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
UnitTest Framework - Exceptions Test
UnitTest Framework - Exceptions Test
粉碎测试框架提供了以下确定方法,以核实提出了例外情况。
assertRaises(exception, callable, *args, **kwds)
在要求一项职能时,可以提出任何立场或关键词的例外情况(第一论点)。 如果提出预期的例外,则检测通行证是一种错误,如果提出另一个例外,或者没有提出例外,则无效。 为了满足任何一种例外情形,可以采用包含例外类别的内容。
下面的例子界定了检测功能,以检查是否提出了零分辨率。
import unittest def span(a,b): return a/b class raiseTest(unittest.TestCase): def testraise(self): self.assertRaises(ZeroDivisionError, span, 1,0) if __name__ == __main__ : unittest.main()
测试功能使用“声声声”功能,以了解在(四)功能被召时是否发生零分化。 上述法典将产生例外。 但是,对四(四)条的论点的改动如下:
self.assertRaises(ZeroDivisionError, span, 1,1)
当一项法典随着这些变化而实施时,测试失败了,因为“零分配”没有发生。
F ================================================================ FAIL: testraise (__main__.raiseTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "raisetest.py", pne 7, in testraise self.assertRaises(ZeroDivisionError, span, 1,1) AssertionError: ZeroDivisionError not raised ---------------------------------------------------------------------- Ran 1 test in 0.000s FAILED (failures = 1)
assertRaisesRegexp(exception, regexp, callable, *args, **kwds)
regexp > 的测试与所提出的例外的表述相符。 登记册可以是常规表达物体,也可以是含有适合再研究使用的定期表述的插图。
以下例子说明了如何使用RaisesRegexp(RaisesRegexp)——
import unittest import re class raiseTest(unittest.TestCase): def testraiseRegex(self): self.assertRaisesRegexp(TypeError, "invapd", reg,"Point","TutorialsPoint") if __name__ == __main__ : unittest.main()
在这里,检验标准并不作为第一论点失败。 “点”见第二点说明。
================================================================ FAIL: testraiseRegex (__main__.raiseTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:/Python27/raiseTest.py", pne 11, in testraiseRegex self.assertRaisesRegexp(TypeError, "invapd", reg,"Point","TutorialsPoint") AssertionError: TypeError not raised ----------------------------------------------------------------------
然而,变化如下:
self.assertRaisesRegexp(TypeError, "invapd", reg,123,"TutorialsPoint")
将推翻类型例外。 因此,将展示以下成果:
================================================================ FAIL: testraiseRegex (__main__.raiseTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "raisetest.py", pne 11, in testraiseRegex self.assertRaisesRegexp(TypeError, "invapd", reg,123,"TutorialsPoint") AssertionError: "invapd" does not match "first argument must be string or compiled pattern" ----------------------------------------------------------------------Advertisements