场景/故事是BDD / TDD中的新界面?

时间:2009-11-17 20:21:33

标签: php tdd interface bdd oop

PHP有点瘫痪,因为它还没有返回类型。当X已经存在时,我需要我的代码抛出异常。我可以在一个场景中编写这个,但是我无法从场景转到我的类应该实现的接口。

实际上我猜这个问题在TDD中是一样的。通过我的'测试'而不是通过我的界面,我可以看出更多。然而,我的界面定义了哪些组件可以互动,他们应该承担哪些责任。

PHP中的问题更大,因为它没有返回类型,但它也存在于其他语言中,因为没有契约表示当x是这种情况时应该抛出异常。

我怎样才能最好地解决这个问题?

1 个答案:

答案 0 :(得分:1)

在抛出异常的语言中,接口只是合同规范的一部分。使用测试来描述合同的其余部分,声明在预期时抛出正确的异常。