Version 6 (modified by Amar Takhar, on 03/27/12 at 03:07:52) (diff) |
---|
RTEMS Testing
Table of Contents
Mentors: Amar Takhar, Sebastian Huber
Students:
Status: Uninitiated.
Introduction: RTEMS test suite needs major cleanup in order to modernise and allow for easier additions of new tests.
Goal: Creation of 4 separate test groups: Host-based (Testing of APIs out-of-band), Operational (Runs on actual hardware or in-simulation), RTEMS BSP-specific tests and tests specific to a Board.
Requirements: Knowledge of testing is not required. The idea candidate should have a firm grasp of the C language with knowledge of C++ as some of the test frameworks will be written using googletest and googlemock. Other components of the framework will have to be written from scratch the exact language used for this has not been decided. Learning how to test software is an extremely desirable skill in the software development world any candidate should come in with an eagerness to learn.
Resources: You are encouraged to contact Amar on IRC in the RTEMS channel or email him directly (amar-rtems.org) with any questions you may have.
Additional Information
This project does not require writing new tests, it involves the groundwork for allowing tests to be written.
The RTEMS test suite contains tests that while relevant use a custom test harness that limits the application of modern testing techniques.
Be aware this project has little to do with RTEMS itself, it involves advanced software testing techniques. While very useful knowledge if you are excited to get into RTEMS code this will not be a good project for you. Conversely if you are not interested in embedded programming but are interested in software testing this is an excellent project.
Anyone accepting this task as part of GSoC is not expected to complete the entire project in one summer, the tasks will be broken into smaller milestones it is OK to complete as many of these milestones as possible before the period ends.
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