The subject of the following thesis is test data generation. Testing is a very important and lengthy part of the development process. With the aid of testing, we can find the various errors that have risen during development, and we can find out if certain functions work differently than what is specified. By finding these, we can save a large amount of money and energy. This is because if we postpone checking for errors, running our systems could result in severe consequences. However, because of the high amount of data required for thorough testing, creating these by hand is very difficult. The goal of my paper is to present an automated test data generating algorithm.
We can store the data used for testing in various ways. One method is to use a relational database, in which we can use SQL queries to search and manipulate data. Since today’s relational database management programs are quite powerful, we will be able to easily manage vast amounts of data. However, we can not use these databases directly during testing, so the final output of the test data generation will be converted to a format that the test case specifies for example, TTCN-3. In my solution I specified the various data types using SQL queries, for which the program created a table of specific instances by using further SQL queries. The output was both a relational database and a list in TTCN-3 format.
The program described in this paper is able to create a large amount of test data, in accordance with the specifications and type definitions.