| dc.description.abstract |
Software testing is an integral part of the Software Development Life Cycle, there is major potential in the automation of this task. Testing covers a broad spectrum of things throughout the system, so there are many types of Testing techniques such as "Functional/unit testing" which is the main focus of this project. Other types of testing include integration testing, system testing, security testing, etc. “Unit testing” is a well-known method, widely used in practice by which a single program function or method of the Software Under Test is tested separately with respect to its functional correctness or when doing automated analysis ensuring some amount of code coverage. Unit testing is defined as an automated test that verifies the correctness of a small piece of code (also known as a unit), it does it quickly and does it in an isolated manner. Testalyzer is an automated unit test generator for the C programming Language that can quickly and efficiently generate test cases using multiple techniques. The way it does this is that the tool parses C code files and generates an AST. Which is then traversed to extract the information for functions and other key parameters in the code. The tool then generates test cases for any function the user selects in the code based on techniques such as boundary value analysis, random testing, robustness testing, etc. The test cases created by the Testalyzer tool can increase the coverage achieved in testing as well as test cases can be added that check the functional correctness of the code being tested. The tool is also able to execute the test script that is generated making use of the GCC compiler directly from the front end displaying the result of the execution of the test cases directly on the front end as well. Testalyzer includes a user-friendly, front end made in JAVA to easily install and use it in any operating system that has the JAVA Runtime Environment installed. |
en_US |