When a user enters username, password, email, etc. and clicks on register button
It should validate email address
It should check that the username already does not exist
It should register the user
It should send a welcome email
It should redirect to the home page
我想测试的东西无法使用Watin测试,例如发送电子邮件,检查用户是否存在等等.这些将是控制器测试的一部分.这是否意味着我的验收测试只会是当用户注册时他应该被重定向到主页?如何将整个过程分解为测试?
如果这些检查是在各种测试和不同级别实现的,那么如何获得MSpec提供的已实现所有功能的摘要报告?关于人们如何打破这些任务,然后他们如何获得集体报告等,我感到有点困惑.
您的单元测试包括以下内容:>如果未给出用户名,请测试注册用户的代码是否会引发异常.
>测试验证密码的代码是否有效.
基本上采用小单位的代码并测试它们.
对于验收测试,您将其提升到一个新的水平并集成这些功能以确保它们正常工作.所以你可以进行验收测试来检查整个注册功能:
Given I am a new user When I complete the register user form Then I will be redirected to the home page Given I am a new user When I complete the register user form And I have not entered a valid password Then I will be shown an error message
或者该地区的某些东西.
就个人而言,我不是编写测试用户界面的测试的忠实粉丝,因为UI可以经常更改(意味着你必须修复被这些更改破坏的测试);再加上我觉得我通过编写单元测试然后进行验收测试来重复工作.
但是,ATDD可以使您受益,因为您可以与他们沟通您如何测试应用程序.向他们展示BDD测试(写入文本)而不是公共无效ValidatePassword_PasswordNotValid_ExpectFalse要容易得多.
这是您需要尝试ATDD以了解您是否会从中受益的情况之一.