Changes between Initial Version and Version 1 of Developer/Projects/Open/TestScreenValidation


Ignore:
Timestamp:
02/14/15 19:33:06 (9 years ago)
Author:
Gedare Bloom
Comment:

New Page with initial open project description.

Legend:

Unmodified
Added
Removed
Modified
  • Developer/Projects/Open/TestScreenValidation

    v1 v1  
     1= Test Screen Validation =
     2
     3
     4[[TOC(Developer/Projects/Open/TestScreenValidation, depth=2)]]
     5
     6
     7'''Mentors:''' Past, Present, and Potential Mentors
     8
     9'''Students:''' Past, Present, and Potential Students
     10
     11'''Status:''' Current status of project. For starting, it should be: Uninitiated.
     12
     13'''Introduction:''' Develop a tool to validate the correctness of test outputs.
     14
     15This is not an exhaustive list of requirements for such a tool.
     16
     171. Does the test output a screen?
     182. Can the output automatically be written to the terminal or (better yet) a text file?
     193. A standard way to write a verification script to specify the form of acceptable results?
     20   A. a parser that can identify the correct form of output
     21               (for example: The time taken to complete the task is 40.)
     22                             The form of the output might be specified by something like
     23                                grep "The time taken to complete the task is [0-9][0-9]*" test.txt
     24     B. a way to parse out any run specific result
     25               using the above example: The time taken to complete the task is 40.
     26                             The way to parse out the specific result might be specified by something like
     27                                cat test.txt | sed 's/^.*is\ //g' | sed 's/'\.'$//g'
     28     C. a way to specify acceptable results (an acceptable range or a list of acceptable outputs)
     29               using the above example: The time taken to complete the task is 40.
     30                             The acceptable range would be the non-negative numbers (the task might be completed before the clock is read, but there is no such thing as negative time.
     31     D. some tests will not have run specific output (think "hello world".). The test verification should be able to handle that issue as well.
     32     E. The person writing the verification script should only have to enter the
     33       (1) whether the test outputs to the screen, if not the test should not be verified with the script, if so
     34       (2) parsing logic
     35       (3) (if applicable) acceptable results
     36
     37     F. The tool should be written in an OS independent language (such as Python).
     38
     39     G. For this tool to stay up-to-date, a hook should be added to check-submission to verify that before a test is accepted into the git repository it has an entry in the RTEMS Test Screen Validation (even if the entry indicates the test does not have a screen).
     40
     41     H. Although, it might be preferable to change each test to do a return code instead.  In which case, a hook should be added to check-submission to verify that before a test is accepted into the git repository it has an exit code of the correct form.
     42
     43     I. The case for either method (test screen validation or exit codes) would need to be made, and accepted by the RTEMS development team.
     44
     45
     46'''Goal:''' Concise statement of the overall goal of the project. Refine this initial statement to include: project deliverables (code, docs, testing), required/suggested methodology, standards of quality, possible goal extensions beyond the main objective.
     47
     48'''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.
     49
     50'''Resources:''' Current RTEMS developers, papers, etc that may help you in this project.
     51
     52'''Acknowledgements'''
     53 *  who helped and did work
     54
     55= Miscellaneous Sections =
     56
     57As the project progresses, you will need to add build instructions, etc and this page will evolve from a project description into a HOWTO.
     58
     59= References =
     60 *  TBD
     61
     62'''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.