Software Testing for Everyone

CDash is an open source, web-based software testing server. CDash aggregates, analyzes and displays the results of software testing processes submitted from clients located around the world. Developers depend on CDash to convey the state of a software system, and to continually improve its quality. CDash is a part of a larger software process that integrates Kitware’s CMake, CTest, and CPack tools, as well as other external packages used to design, manage and maintain large-scale software systems.

Kitware’s Practical Software Process

Kitware’s Practical Software Process has grown organically over more than a decade of developing large-scale, scientific software systems such as VTK and ITK. It is a low-overhead, streamlined process that results in high-quality software systems. Rooted in the concepts of extreme programming and test-driven development, the PSP has benefited from the contributions of many dozens of individuals scattered around the globe. Besides the GE, Kitware, VTK and ITK communities and sponsors like NA-MIC and Sandia National Labs, many individuals like Alexander Neundorf (assisted with the CMake/KDE port) and Andrew Maclean (systems evaluator and tester) at the University of Sydney have and continue to contribute to the development of the PSP.

In recent years the PSP has grown to consist of several tools developed by Kitware and its partners, as well as external tools that have been adopted into the software process. These tools include:

  • CMake, for cross-platform development
  • CDash, the testing dashboard server
  • CTest, the testing client
  • CPack, the cross-platform packaging tool
  • KWStyle, the configurable coding style evaluation tool
  • Doxygen, for documentation generation
  • Mantis, a bug tracking system
  • dynamic memory analysis tools including ValGrind and Purify
  • and code coverage tools such as gcov and BullsEye.