写单元测试的精髓就是

2009-11-11 16:08:15
要这样命名测试函数

def test_join_should_notify_myself(self):

不要这样命名

def test_join(self):

这样才能写出这样的测试用例

def test_join_and_subscribe_and_leave_should_keep_subscribed(self):

robbin
2009-11-11 16:53:11 robbin

BDD其实就是这么来的,method太长了,写的太难看,就不如直接用字符串了,例如我们这样写:

it 'should decrement author 30 score and status flag should be hidden when topic was rated as hidden' do
......
end

Tin
2009-11-11 17:58:08 Tin

嘻嘻,TW的同事推荐大家把should……when句式当成最基本的spec test的名字,因为它可以帮助你找到你测试的“意图”。但是,有些行为可能不太好用should句式命名,这时可以退而求其次,使用test_behavior的方式来命名。robbin所举的例子描述非常详细,如果用了cucumber这样的BDD测试框架还可以把句子中的那些变量用data table注入,形成测试DSL,用起来更爽 :D

hongqn
2009-11-11 22:17:12 hongqn (人生就是不停的重构)

cucumber那样的写起测试来太罗唆了,不喜欢。

还是就是最简洁的 python unit test 就好,要说的东西在函数名中说不清楚的话,用docstring就行了。