Tutorials and resources on how to apply unit testing in software testing
This article from Keith Burnell presents best practices and techniques to increase the testability of ASP.NET MVC applications. This includes how to structure the solution, architecting the code to handle the injection of dependencies and implementing dependency injection with StructureMap.
Easy Coverage is an open source framework that can dynamically generate Java unit tests to perform basic verifications. Easy Coverage is extensible and highly configurable. It can work as a standalone product or it can be used with JUnit. In his blog post, Romain Delamare explains how to dynamically generate Java unit tests with Easy Coverage.
This article explains how you can set up a unit test method that will retrieve values used in the test method from a data source using the Microsoft unit test framework for managed code. Creating these data-driven unit tests makes it easy to test a multiple inputs with a single method.
Jasmine is a behavior-driven development framework for testing JavaScript code with a clean, obvious syntax so that you can easily write tests. Testem is test runner that makes Javascript unit testing easier. In this blog post, Joe Zimmerman provides a step by step approach to set up a Jasmine unit testing environment with Testem.
It is rather rare to have access to the software testing techniques used by a large project to maintain the quality of its code base. In this blog post, Jan Wloka, a member of the team behind IBM’s Rational Team Concert, presents the different techniques and tools used to control software evolution and to improve the quality of their code base.
This extract from the book “Pragmatic Unit Testing in Java with JUnit” written by Andy Hunt and Dave Thomas provides an introduction to the usage of mock objects during Java unit tests. They define the usage of mocks in unit testing as the unit similar to the use of lighting doubles in the movies: A mock object is simply a debug replacement for a real-world object.
Martin Flower defines legacy code as code without tests. You test your server-side code, but if you are working on a site with a fair amount of non-trivial JavaScript (ajax call, extensive callbacks, etc.) you really should be testing your JavaScript as well. All the untested JavaScript code we are writing today is, in effect, legacy code, but we can address this with JavaScript unit testing!