Trouble with Test Data

Some new functionality went to our internal test team. They were overwhelmed. A developer was called in to assist. He found that they were spending 30 minutes to analyze each scenario. And there were an abundance of scenarios. The developer asked the development team for help. We responded by writing a script which grabs a lot of data from a number of database tables. It does some processing and interpreting of the data to make it easier to see what is going on. The initial developer asked if this script could be driven by a temporary table containing the records a tester want to inspect. That was easy enough to code.

The temp table had exactly one column. This column had keys from another data table which drove the whole process. It all seemed very easy. However like real life, nothing is ever that easy. The testers had problems putting data into the temp table. They wanted to do one insert statement to add about 100 records to the temp table. They user an INSERT INTO table VALUES (value1, value2, value3, etc). The problem with this is that it is the wrong way to do things. That attempts to insert one record with many columns. The temp data table had only one column,

At first I thought maybe could try to rewrite their insert as INSERT INTO table SELECT value1, value2, value3 FROM DUAL. However this too resulted in an insertion of just one row. I was stumped. Perhaps I was just tired. Luckily I had previously written a utility that took a file with lot of values, and translated it into a script which inserted many records into a table. This was perfect. My program even prompted the user for the name of the table and column that you wanted to populate. This banged out a script that got the tests going.

Later I found there were more problems in testing. The requirements were very complex. Wouldn’t you know it? They put a junior tester on this task. I guess you have to learn somewhere. At least they were provided with the best custom test tool that development could product. You can’t ask for anything more than that. I am still a bit perplexed on how to write a single insert statement that will add a number of rows to a temp test table. Any ideas?