Continuous test-driven development

Continuous test-driven development (CTDD)[1] is a software development practice that extends test-driven development (TDD) by means of automatic test execution in the background, sometimes called continuous testing.[2]

Practice

edit

In CTDD the developer writes a test first but is not forced to execute the tests manually. The tests are run automatically by a continuous testing tool running in the background. This technique can potentially reduce the time waste resulting from manual test execution by eliminating the need for the developer to start the test after each phase of the normal TDD practice: after writing the (initially failing) test, after producing the minimal amount of code for the test to pass and after refactoring the code.

Continuous testing tools

edit

References

edit
  1. ^ Madeyski, L. and Kawalerowicz, M. Continuous Test-Driven Development - A Novel Agile Software Development Practice and Supporting Tool, Proceedings of the 8th International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE), 2013, Angers, France, 4–6 July 2013: p.260-267.
  2. ^ Saff, D. and Ernst, M. D. Reducing wasted development time via continuous testing, Fourteenth International Symposium on Software Reliability Engineering, 2003, Denver, USA, 17–20 November 2003: p.281-292.
  3. ^ "Infinitest". infinitest.github.io.
  4. ^ "NCrunch for Visual Studio". www.ncrunch.net.
  5. ^ "Save a file, autotest will run the matching tests! (Autotest without ZenTest): grosser/autotest". November 10, 2018 – via GitHub.
  6. ^ "AutoTest.NET is a tool for automatically running builds and test in the background when code changes. This practice gives you immediate feedback and helps facilitate real test driven development. -." February 19, 2019 – via GitHub.
  7. ^ "AutoTest.NET is a tool for automatically running builds and test in the background when code changes. This practice gives you immediate feedback and helps facilitate real test driven development. -." March 27, 2018 – via GitHub.
  8. ^ "Home". continuoustests.com.
  9. ^ "Wallaby - Integrated Continuous Test Runner for JavaScript". wallabyjs.com.
  10. ^ "PyCrunch TDD Assistant for Python". pycrunch.com.
edit