我正在研究RSpec和cucumber,想知道它们对单元测试有什么补充作用?
一方面,你可以说拥有“故事”或更易读的测试是一个优点,但是所有这些函数名的别名是否违反了使用单元测试作为代码用例的原则?
一方面,你可以说拥有“故事”或更易读的测试是一个优点,但是所有这些函数名的别名是否违反了使用单元测试作为代码用例的原则?
与单元测试不同,像使用Cucumber一样的功能测试应该在方法/类级别上测试工作单元。它们理想情况下不应该测试整个系统之间的交互作用。它们需要快速和隔离(请参见http://agileinaflash.blogspot.com/2009/02/first.html)
这就是Cucumber的作用。它提供了一个界面,客户可以帮助定义他们希望应用程序做什么,然后您编写实现它的测试。这意味着Cucumber层很可能与UI处于相同的级别(因此可以作为奖励防止您将逻辑放入UI中)
将来,当您的客户想要更改功能时,您可以打开测试,与客户一起更改其期望,然后编写更改。将整个过程连接到CI,您就可以开始了。