Toad World® Forums

The table input


#1

Hi,

I do testing in ORACLE manually and now I want to move the testing into Quest Code Tester for Oracle. The simple description of my testing is: loading some data in external table into tables defined in oracle. I encountered a problem is that how I can define the input parameter in Quest Code Tester. My input is a table with 5 columns. The output is also a table but the columns are in different order.

In Quest Code Tester of INPUT PROPERTY window, how I can convert the column value in table into the “list of values”?

Thank you very much for your help.


#2

I may need some clarification from you so that I can answer properly.

Sounds like your program needs to have a certain set of data in a table (let’s call it T1) and the program changes the contents of a table (let’s call it T2).

What is not clear to me is if your procedure accepts IN parameters that you want to set or if you want to set column values in tables.

Assuming the latter, you would do this via the customization sections, not through the Input grid. In Test Builder, click on the Customization button, then add the code in the appropriate section (almost certainly the Initialization section). That is, you may need to write insert statements.

As for the table whose contents are changed, you would then create a test for T2 (the columns certainly do not have to match those of T1).

Does this help? Can you clarify?

Thanks, sF


#3

Thank you very much for your answer.

I followed your suggestions and tried the test again but failed. I sent the more detailed description of my testing to your email address.

Thanks again.


#4

Thanks; the code helps alot. I will summarize and simplify:

  • Procedure has single input - essentially the name of the source table.

  • You then select rows from that source table and insert them into another table, the name of which is determined by the data in the source table rows.

So to verify that this program works, you need to create three outcomes for Queries, one for each of the three tables that could have received new rows.

Each outcome is defined as follows:

A. Changed by program: either the name of the table from one of the INTO clauses of the INSERT FIRST statement, or a query against that table using a WHERE clause to retrieve just the subset of rows that may have been inserted.

B. Test type is equality (=).

C. Expected results: should be set to a Query. Then in the text of the query put in the select statement that correctly identifies the rows from the original table that would have been copied over as in:

SELECT end_date, transaction_id, etc.
FROM source_table
WHERE end_date is NULL

Again, you will need to create one of these outcomes for each of the tables that has received rows.

I hope this helps clarify what you should do.

SF


#5

Thank you very much, Steven.

I am following your suggestions and defining my testing input and output. Your suggestions give me lots of hints.

Thanks again.


#6

You can and should also check out the Quick Start Tutorials in the help doc. There is an example of building a test for an insert program.

SF


#7

Solved.