在
Ruby on Rails中,如果在该模型的规范(或单元测试)中测试给定模型的所有验证规则,是否仍然需要为每个验证编写Cucumber场景?
是否只需编写两个方案即可:一个用于输入有效数据,一个用于输入无效数据?
解决方法
这是一个很好的问题,答案是:这取决于.
您可以将Cucumber视为产品所有者,开发人员和测试人员之间进行通信的一种方式.
如果您认为在Cucumber中进行验证可以增加对产品功能的共同理解,那么请将它们保留在那里.
一种方法是将验证结合到场景大纲中:
Scenario Outline: User tries to register but skips a mandatory field Given I am registering And I leave the "<field>" blank When I click "Submit" Then I should see "<message>" And I should not be registered | field | message | | Forename | Please enter your forename | | Surname | Please enter your surname | | Date of Birth | Please enter your date of birth |