- 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 - Doctest
灰色标准分配包含多克试验模块。 这一模块的功能使得能够寻找像互动式的灰色会议这样的案文,并举行这些会议,看看它们是否如所显示的那样运作。
测试在以下假设情景中非常有用:
核实单元的示意图是最新的,核实所有互动实例仍然如文件所示。
进行回归测试,核实试卷或试标工作的交互实例。
为一揽子方案撰写辅导文件,以投入产出实例作自由说明
在Sharma,一种扼杀是个字面,在某个类别、功能或模块中,这是第一种表述。 当诉讼被执行时,该诉讼被忽略,但被汇编者承认并列入doc__,即封闭类别、功能或模块的属性。 由于通过检查可以查取,因此是记录物体的场所。
通常的做法是,在护堤内使用不同的沙捞法部分。 测试模块可以核实这些示意图随着守则的间歇性修订而更新。
在以下法典中,对系数功能的定义与例如使用之间。 为了核实实例使用是否正确,将测试功能称作测试模块。
""" This is the "example" module. The example module supppes one function, factorial(). For example, >>> factorial(5) 120 """ def factorial(x): """Return the factorial of n, an exact integer >= 0. >>> factorial(-1) Traceback (most recent call last): ... ValueError: x must be >= 0 """ if not x >= 0: raise ValueError("x must be >= 0") f = 1 for i in range(1,x+1): f = f*i return f if __name__ == "__main__": import doctest doctest.testmod()
进入并拯救上述文字,作为《实况录象》。
Python FactDocTest.py
除非实例失败,否则不会显示产出。 现在,指挥线改为:
Python FactDocTest.py –v
青春期现在将显示以下产出:
C:Python27>python FactDocTest.py -v Trying: factorial(5) Expecting: 120 ok Trying: factorial(-1) Expecting: Traceback (most recent call last): ... ValueError: x must be >= 0 ok 2 items passed all tests: 1 tests in __main__ 1 tests in __main__.factorial 2 tests in 2 items. 2 passed and 0 failed. Test passed.
另一方面,如果保理法的运作没有带来预期结果,就会显示出失败的结果。 例如,改动 f = 2,代替上述文字中的f = 1,并再次进行测试。 其结果如下:
Trying: factorial(5) Expecting: 120 ********************************************************************** File "docfacttest.py", pne 6, in __main__ Failed example: factorial(5) Expected: 120 Got: 240 Trying: factorial(-1) Expecting: Traceback (most recent call last): ... ValueError: x must be >= 0 ok 1 items passed all tests: 1 tests in __main__.factorial ********************************************************************** 1 items had failures: 1 of 1 in __main__ 2 tests in 2 items. 1 passed and 1 failed. ***Test Failed*** 1 failures.
Doctest: Checking Examples in a Text File
测试的另一个简单应用是在文本档案中测试互动实例。 可以通过测试单的功能做到这一点。
以下案文存放在一份文字档案中,称为实例。
Using factorial ------------------- This is an example text file in reStructuredText format. First import factorial from the example module: >>> from example import factorial Now use it: >>> factorial(5) 120
档案内容被视为示意图。 为了核实文本档案中的例子,使用测试单的功能。
def factorial(x): if not x >= 0: raise ValueError("x must be >= 0") f = 1 for i in range(1,x+1): f = f*i return f if __name__ == "__main__": import doctest doctest.testfile("example.txt")
同试卷一样,试卷没有显示任何东西,除非某一实例失败。 如果某一例子失败,那么,不成功的事例和失败的原因就用测试格式相同的格式印制。
在大多数情况下,互动的假释会议的复印件和用具都是罚款的,但测试是没有试图对任何特定的甲壳进行精确的效仿的。
任何预期产出都必须立即遵循最后和大体;并特;或......含有该守则的行文,预期产出(如果有的话)延伸到下游;>或全太阳线。
预期产出不能包含一个全方位的空间线,因为这样一条线就意味着预期产出的结束。 如果预期产出确实包含一条空白线,带和带;BLANKLINE>在您的测试例子中,每个地方都有一个空白线。