Version 2 (modified by Chris Johns, on 12/11/14 at 02:21:10) (diff) |
---|
RTEMS Test Template
Table of Contents
Credit: Sebastian Huber for proposing the enhancement
Mentors: Help Wanted.
Students: Help Wanted. Past help to be filled in
Status: Initiated.
Introduction: Unit tests are a vital development tool. It should be as easy as possible to write tests and to execute them.
Goal: Currently we have to do several steps to write a test, which is way to much work. A lot of copy and paste is involved. What we did as of the time of the bug-report.
- Create a new directory for the test. Note: handled by http://git.rtems.org/rtems-testing/tree/rtems-test-template
- Create a new Makefile.am. This normally involves a lot of copy and paste from an existing test. Note: handled by http://git.rtems.org/rtems-testing/tree/rtems-test-template
- Add a new init.c file. Which may be enough for simple tests. Note: handled by http://git.rtems.org/rtems-testing/tree/rtems-test-template
- Add a test.doc file for the documentation. Note: handled by http://git.rtems.org/rtems-testing/tree/rtems-test-template
- Add a test.scn file with the output of the test. TODO: probably could add a make-scn to rtems/make/leaf.cfg or rtems/c/src/make/leaf.cfg through a clever call to a simulator and a log file
- Modify the top level Makefile.am. TODO: probably could add this functionality to rtems/bootstrap
- Modify the top level configure.ac. TODO: probably could add this functionality to rtems/bootstrap
- Run bootstrap. TODO: make this an option when running the script in http://git.rtems.org/rtems-testing/tree/rtems-test-template
- Add a copy and paste .cvsignore. Note: outdated, possibly .gitignore
- Write a ChangeLog with several entries. Note: replaced ChangeLog with git functionality
Refine this initial statement to include: project deliverables (code, docs, testing), required/suggested methodology, standards of quality, possible goal extensions beyond the main objective.
Standards of Quality: the build system performs the needed steps
Possible Goal Extensions:
- Make the unit tests more in compliance with http://softwaretestingstandard.org/ by filling in the .doc with the needed information
- Align the tests with the POSIX and RTEID standards through the use of doxgen comments
Requirements: List the requirements and level of expertise you estimate are required by the developer tackling this project will have to have: Required level of programming language(s), specific areas of RTEMS or tools, level of familiarity with RTEMS, cross-development, GNU/Linux, etx., development/documentation/testing tools, mathematical/algorithmic background, other desirable skills.
Resources: Sebastian Huber and http://git.rtems.org/rtems-testing/tree/rtems-test-template
Acknowledgements
- Sebastian Huber, Christopher Kerl, Joel Sherrill TODO: add the other contributers
Miscellaneous Sections
As the project progresses, you will need to add build instructions, etc and this page will evolve from a project description into a HOWTO.
References
- TBD
Other sections: If you have more to say about the project that doesn't fit in the proposed sections of this template, feel free to add other sections at will.