Test driven development tools and technologies

Test Driven Development is the practice of writing unit tests for your code before you actually write that code. By writing a test and then writing the code to make that test pass you have a much better idea of what the goal and purpose of your code is. Test Driven Development not only increases the quality of your code, but also allows you to refactor the internals of a method or class and quickly and easily test the outside interface of the object.

Some of the low cost tools and technologies for test driven development.

  1. TestDriven.Net
    TestDriven.Net is a unit testing add-in for Visual Studio. It supports multiple unit testing frameworks including NUnit, MbUnit, xUnit and MSTest.

    More Info: http://testdriven.net/

  2. NUnit
    NUnit is a open source unit-testing framework for all .Net languages. Using this the developer can write unit and integration tests and run using unit testing tool. It is written entirely in C# and has been completely redesigned to take advantage of many .NET language features.

    More Info: http://www.nunit.org/

  3. Typemock
    Typemock is a Mock Object Framework for Microsoft.Net. A Mock Object Framework enables you to simulate objects when testing your code. For example, you can use Typemock to simulate instantiating objects, calling object methods, and reading and setting object properties.

    When writing code using TDD, you constantly write and run unit tests. You run these tests over and over and over again. This means that a unit test must be fast. If your unit tests are not fast, then you’ll never get any work done because you’ll be sitting around all day waiting for your unit tests to complete.

    Using typemock isolator you can run your code in isolation and faster.

    More Info: http://www.typemock

  4. Selenium RC
    Selenium Remote Control (RC) is a test tool that allows you to write automated web application UI tests in any programming language against any HTTP website using any mainstream JavaScript-enabled browser.

    Using these test you can test your web application from a functional perspective, meaning that their aim is to cover the set of functionality available to the user, as opposed to testing internal implementation.

    More Info: http://seleniumhq.org/projects/remote-control/