Software testing is an important method to ensure the reliability of software. Unit testing is the earliest stage of the whole software testing lifecycle, bugs can be found accurately in the early coding stage by unit testing, so as to have the lower cost of repairing bugs. Traditional automatic unit testing tools usually take the form of client software. However,developers often develop software on IDE(Integrated Development Environment), which results in the separation of development environment and test environment and brings difficulties to the unit testing. Eclipse is not only an open-source project and Java-based IDE, but also an extensible development platform. It provides a complete component extension mechanism for developers to eliminating repetitive works. Code testing plug-ins based on the Eclipse platform make it easier and faster for developers using Eclipse to test for logic errors.In this thesis, an automatic unit testing system based on Eclipse CDT(C/C++ Development tooling) has been proposed. At first, the related theory and methods of unit testing are studied, and CTS(code test system)is briefly introduced, then technologies related to Eclipse platform are researched, including Eclipse architectures, Eclipse plug-in mechanisms,Eclipse runtime model OSGi, Eclipse CDT and Eclipse plug-in graphics mechanisms.On this basis, the main function modules of automatic unit testing system based on Eclipse CDT include four parts, the testing execution environment configuration module, the pretreatment testing module, the unit testing module, the testing result analysis and processing module. The implementation part mainly contains seven parts, including the establishment of the plug-in project part, the plug-in configuration files part, the plug-in pretreatment part, the plug-in execution environment configuration part, the unit test part, the test results analysis part and the user graphical interface part.Finally, a series of comparative experiments were carried out to show the usability of the unit testing plug-in in the perspective of unit test results,bug location and regression testing. |