Slicer-3.6-QA
From Slicer Wiki
Home < Slicer-3.6-QA
Return to Slicer 3.6 documentation
- This page contains our assessment of the Slicer 3.6 modules and extensions
- See also the module culling event at the end of April 2010
Score | Name | Documentation | Help [1] | Acknowledgment [2] | Test coverage [3] | valgrind errors |
---|---|---|---|---|---|---|
Gold | my module | complete | yes and yes | yes, yes, yes | 80% | 0 |
Testing Partition
Most Slicer modules have a GUI component and a Data Processing component.
Testing GUI components is still a challenge, so we will focus here on testing the Data Processing components. This can be done in most cases by partitioning the module into a GUI section and a Data Processing section, where the second one usually takes the form of a C++ class (although that is not a requirement).
The data processing section can be tested by using standard CTest/CMake mechanisms. Basically by adding ADD_TEST() entries to the CMakeLists.txt file of the module.
Luis Ibanez' scoring system
The following scoring will be applied to the data processing sections of all modules:
- Gold: have > 80% code coverage, 0 Valgrind errors, documentation and tutorial
- Silver: have > 70% code coverage, < 10 Valgrind errors, documentation and tutorial
- Bronze: have > 60% code coverage, < 50 Valgrind errors, documentation and tutorial
- Aluminum: have > 50% code coverage, < 100 Valgrind errors, documentation and tutorial
- Coal: have < 10% code coverage, > 1000 Valgrind errors, documentation and tutorial
- Plutonium: has no testing, no documentation, no tutorial