I am new to Behavior Driven Development and I am trying to learn it. I am using MSpec & Watin for acceptance tests and MSpec for Unit tests with ASP.Net MVC 4. I have a simple scenario of user registration.
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
There are things that I want to test that can’t be tested using Watin like sending email, check if the user exists or not etc. These will be part of the controller tests. Does this means that my acceptance test will only be that when a user registers he should be redirected to the home page? How do I break this entire process into tests?
If these checks are implemented in various tests and different level then how do I get a summary report that is available with MSpec that I have implemented all the features? I am a bit confused as to how people break these tasks and then how they get the collective report etc.