Automating Test Consistency
Creating and controlling incredibly complex vehicles such as a rocket requires an unfathomable number of tests. Such tests are necessary to ensure a successful mission and that any issues are caught immediately. Once human lives become involved, the importance of such tests cannot be understated. Often times, however, tests may not be written in a consistent manner and such inconsistencies can lead to slowing down the test-writing process and may even create concerns with the test itself. Because of this, NASA has standards that should be followed by all test writers, but the list of standards is quite long and ensuring that tests follow this perfectly can be challenging. Older tests or tests written by individuals who are unfamiliar with this guide may not be following it which can lead to inconsistencies. To fix this issue, I have taken these human-readable rules and implemented them into an open-source linting program. Linting software is used to automatically check the style of code, and in this case, the tests. In doing so, any rules that the test developer may not have followed will be flagged upon running the software and they can quickly and accurately keep their test consistent with the rules that they are expected to follow.