Test-driven learning: intrinsic integration of testing into the CS/SE curriculum

  • Authors:
  • David S. Janzen;Hossein Saiedian

  • Affiliations:
  • University of Kansas, Lawrence, Kansas;University of Kansas, Lawrence, Kansas

  • Venue:
  • Proceedings of the 37th SIGCSE technical symposium on Computer science education
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Test-driven learning (TDL) is an approach to teaching computer programming that involves introducing and exploring new concepts through automated unit tests. TDL offers the potential of teaching testing for free, of improving programmer comprehension and ability, and of improving software quality both in terms of design quality and reduced defect density.This paper introduces test-driven learning as a pedagogical tool. It will provide examples of how TDL can be incorporated at multiple levels in computer science and software engineering curriculum for beginning through professional programmers. In addition, the relationships between TDL and test-driven development will be explored.Initial evidence indicates that TDL can improve student comprehension of new concepts while improving their testing skills with no additional instruction time. In addition, by learning to construct programs in a test-driven manner, students are expected to be more likely to develop their own code with a test-driven approach, likely resulting in improved software designs and quality.