我应该对我的Behat步骤定义进行单元测试吗?

时间:2013-06-26 13:17:48

标签: php unit-testing tdd bdd behat

我的团队刚刚开始采用Behat for BDD。我们构建了Web应用程序,并且发现我们希望在不同的产品中共享一些与Web相关的通用步骤定义。与MinkExtension中已包含的定义非常相似的东西,例如: '我应该看到“< option>”来自“< select>”被禁用'。

我们已经设置了一个私人作曲家包,以便我们可以共享我们的自定义网页步骤定义,而我们现在遇到的一个问题(非常元!)是我们是否应该对我们的步骤定义进行单元测试。 / p>

我对此有两种想法,并且不确定它的实用性。我倾向于不对它们进行测试,因为我认为当场景失败时,步骤定义中的失败应该突出显示,在这种情况下,它们应该足够简单,以便轻松找到任何错误。不过,在这个过程中看起来确实有点差距;步骤定义毕竟是可执行的PHP代码......

1 个答案:

答案 0 :(得分:1)

我会尝试测试通用测试代码中使用的任何逻辑。

E.g。我为phpunit编写了一个特殊的断言函数,我在许多测试中使用过(断言两个字符串相等而忽略任何空格差异)。我一直对这个逻辑进行单元测试(实际上甚至是TDDed)。