CASA has not selected a
unit test tool for C++ testing. CASA has not selected
mock object tools for either C++ or Python testing to help decouple parts of CASA for unit and integration testing.
We plan to keep
PyUnit as the recommended CASA Python unit test tool.
Status: See
CAS-5601.
Team
Customers
Collaborators
Plan
- Collect requirements
- List available open source C++ unit test tools
- Rate by apparent ease of use (based on docs)
- For each of the top three candidates
- Try trivial examples
- Verify these work on all supported OSs
- Try non-trivial examples
- Verify these work on all supported OSs
- Evaluate candidates for ease of use within CASA
- Chose one as a candidate for further testing
- Develop trivial example tests on CASA code using candidate tool
- This includes any changes to CASA build system to run these tests in "make test"
- Develop non-trivial example tests on CASA code using candidate tool
- Document guidelines for using candidate tool
- Present results to CASA developers
- Collect requirements
- List available open source C++ mock tools
- Rate by apparent ease of use (based on docs)
- For each of the top three candidates
- Try trivial examples with C++ unit test tool candidate chosen above
- Verify these work on all supported OSs
- Try non-trivial examples with C++ unit test tool candidate chosen above
- Verify these work on all supported OSs
- Evaluate candidates for ease of use within CASA
- Chose one as a candidate for further testing
- Develop trivial example tests on CASA code using candidate tool
- This includes any changes to CASA build system to run these tests in "make test"
- Develop non-trivial example tests on CASA code using candidate tool
- Document guidelines for using candidate tool
- Present results to CASA developers
- Collect requirements
- List available open source Python mock tools
- Rate by apparent ease of use (based on docs)
- For each of the top three candidates
- Try trivial examples with PyUnit
- Verify these work on all supported OSs
- Try non-trivial examples with PyUnit
- Verify these work on all supported OSs
- Evaluate candidates for ease of use within CASA
- Chose one as a candidate for further testing
- Develop trivial example tests on CASA code using candidate tool
- This includes any changes to CASA build system to run these tests in "make test"
- Develop non-trivial example tests on CASA code using candidate tool
- Document guidelines for using candidate tool
- Present results to CASA developers
Deliverables
- Instructions for installing chosen C++ unit and mock tools.
- Instructions for installing chosen Python mock tools.
- Guidelines for using chosen C++ unit and mock tools.
- Guidelines for using chosen Python mock tools.
Requirements
Design
Implementation
Tasks
Project tasks are tracked with Jira sub-tasks under this project's master task. See
CAS-5601.
--
ScottRankin - 2013-09-12