I need some advice about efficient way of writing integration tests for our current ASP.NET MVC application. Our architecture consists of:
I've been using SpecsFor.MVC for integration testing. Essentially you write code in a test class and the framework runs a browser interpreting your C# into browser actions. It's beautifully simple to use and setup.
I'm using Ivonna for testing various levels of isolation. I'm able to test that a particular Url with some particular POST data hits the expected Action method with the expected arguments, and at the same time I'm able to stub/mock external services.
Here at office we do not test against real services.
We were advised to not use real services for testing, we use Rhino Mocks to simulate answers for methods being called inside controller actions.
So the problem is still about how to do integration tests in a good way.
Maybe this could help you:
http://www.codeproject.com/Articles/98373/Integration-testing-an-ASP-NET-MVC-application-wit.aspx
but I am still looking for a better understanding about its possibilities.