A development process that entails writing and automating unit tests before the development of the corresponding units is started. This ensures that the responsibilities of each software unit are well understood before they are coded. Unlike test-driven development, test-first development merely says the tests are written before the production code; it does not imply that the production code is made to work one test at a time (emergent design.) Test-first development may be applied at either the unit test and/or customer test level depending on which tests we have chosen to automate.
Copyright © 2003-2008 Gerard Meszaros all rights reserved