Gallio Icarus vs. Testdriven.net [closed]
What are the differences between using a VS integrated tool like Testdriven.net or using a GUI test runner like Icarus or NUnit GUI? What do you prefer and why? So far i've found that reports are better in Icarus than in td.net, which only features a commandline output. However td.net is faster to use, i can execute single tests more easily without having to uncheck the rest first. NCover integration is very nice also.
Icarus has one great feature that keeps me using it. It is the automatic reload and rerun of tests. I keep Icarus hovering over on the left hand monitor. Each time I build in Visual Studio, Icarus reloads the assemblies and runs all the tests. It's sort of like the instant feedback of Resharper's Solution Analysis, except for tests instead of syntax. Running the tests is automatic and doesn't seem to affect the performance of Visual Studio (likely b/c Icarus is it's own process, not hosted inside the IDE). To enable this configuration go to Icarus->Options->Test Explorer. Check 'Always reload files' and 'Run tests after reload'.
Do you have a Continuous Integration server (like a build server, but runs unit tests)? If so, you can set up gallio to run your unit tests and have all the reporting information there while allowing the developers to use something with faster feedback while they are working. If there is no option, I prefer something that is integrated into the IDE like Testdrvien. The immediate feedback is really helpful when refactoring a piece of code or developing something new under TDD. Besides, if you don't have the sanity checking going on at a single point (like a CI server), you are going to want as many eyes as you can find on those unit tests. Developers tend to use whatever is easiest and, generally, an integrated test suite is easier than a separate component.
How to do TDD with hardware
TDD and DI: dependency injections becoming cumbersome
TDD as a defect-reduction strategy
What is Test Driven Development? Does it require to have initial designs?
TDD in Visual Studio 2008 add-ins
What causes Cassini to load when I run a unit test [duplicate]
Do you TDD for debugging fix?
Experiences with Test Driven Development (TDD) for logic (chip) design in Verilog or VHDL
TDD - When is it okay to write a non-failing test?
What's the point of testing fake repositories?
Separating rapid development from refactoring/optimization
unit test installers
Has anybody used Unit Testing as a way to learn programming?
Testing only the public method on a mid sized class?
How to develop complex methods with TDD