Hybrid Automated Test Generation Tool (HATG)

Huzefa Fakhruddin, Khurram Nawaz Kiani · 2019

Testing is the primary mode to ensure that the software is defect free and demonstrate high level of reliability. Testing constitutes the critical aspect of software development process which also considered being contributory in realizing the quality goals along with software quality assurance function. We have two types of basic testing techniques; Static and dynamic testing that are used for detecting defects in software product. It is challenging to automate testing phase of the software product which includes both type of testing in a single solution according to the relation they have to each other. We have number of tools available for automated static testing (mainly unit testing) which depends upon random testing inputs independent of external interfaces of the method under test. We also have dynamic testing tool which take inputs from user and apply to the system and matches with user entered output to check whether system has quality output.We have developed a tool named ”Hybrid automated test generation tool that produces test suite automatically with high code coverage. It performs dynamic program analysis using dynamic emblematic execution in order to identify test inputs for created unit tests. By using execution path traces, it learns the behavior of program. HATG uses constraint solver for generating new inputs for different program behavior. We have applied HATG to a server based application written in.NET and found multiple errors including serious issues.We used both type of testing techniques, static and dynamic testing, so that it can create concrete number of inputs with highly coverage area. Our results show that it is more effective for applications that are developed for backend processing and which should be capable of handling any types of data for processing.

Read the paper · More papers on PaperTik