Test Automation

CheckmarkIt’s unprofessional and ineffective if your testing cycle consists of throwing the code over the wall to a few end users for a day or two near the end of a project.

Testing needs to take place throughout the project life-cycle, both with developer practices such as Test Driven Development (TDD) that generate automated unit tests, and with automation of acceptance testing using open source frameworks.

Testing throughout the project life-cycle enables agility. With automated unit tests, we can fearlessly change the code, improving its quality and structure, knowing all the time that our code continues to work correctly. With automated acceptance tests, our customers can see their project’s progress at the click of a button, seeing what requirements are coded and working in real time.

One of the most important aspects of our methodology is Test Driven Development, which we emphasize in our projects with obvious benefits:

  • Catch bugs earlier, leading to reduced cost and improved code quality
  • The tests are a living executable specification; far more accurate than most technical documentation
  • Confidence in the reliability of the software during all project phases and releases
  • Tremendous cost reduction for system and user-acceptance testing
  • Better code and reliable functionality over the life time of the application

In addition, we use open source frameworks like Watir and FitNesse to create acceptance test suites that make sense to your business users. The correct use of these tools can give you automated regression tests that test your whole application and can be run at the click of a button.