跑nosetests -s了
class TestTemp():
def __init__(self):
print '__init__'
self.even = 0
def setup(self):
print '__setup__'
self.odd = 1
def test_even(self):
print 'test_even'
even_number = 10
assert even_number % 2 == self.even
def test_odd(self):
print 'test_odd'
odd_number = 11
assert odd_number % 2 == self.odd
Run Code Online (Sandbox Code Playgroud)
打印出以下内容.
__init__
__init__
__setup__
test_even
.__setup__
test_odd
.
Run Code Online (Sandbox Code Playgroud)
测试实例在运行测试之前创建,而安装程序在测试之前运行.
对于一般情况,__init__()setup()完成同样的事情,但是使用__init__()而不是setup()有缺点吗?或两者兼用?
虽然__init__可以作为 的替代品setUp,但您应该坚持使用,setUp因为它是编写测试的程式化协议的一部分。它还有一个对应的 ,tearDown它__init__没有,以及类和模块级别的对应,但__init__没有。
编写测试类与编写普通类不同,因此您应该坚持编写测试类所用的风格。