From: Mark O'D. <mar...@lu...> - 2002-08-03 06:36:57
|
Hi Pavel First it's important to identify what you want to test. Perhaps as a starter get the sql stmts from parse.y and break them into stmts (or probably clauses). This will also make it easier to distribute the work amongst different people without much duplication or overlap. Then for each stmt, lets take FIRST/SKIP you need to identify all the features of that stmt you want to test. 1. range at start 2. range at end 3. range with subselect 4. range with no/incomplete data 5. illegal ranges 6 .range with sort etc. The you design the tests to cover the above features, say 4. no incomplete data 4a select skip 10 first 5 - with zero data. 4b - with 2 rows 4c - with 7 rows 4c - with 1 row 4c - with 10 rows etc... That will give a bit more structure to you test process. Focussing on testing all the legal paths first - does it work correctly as specified. Then revisiting the important illegal or negative test cases - does it screw up when given wrong stuff. But these are endless, so complete coverage here is not There is more in a similar style, on integration, stress, and system testing, and feature lists can be got from other sources, (usually they get pulled out as a list from user requirements, functional spec, program spec etc) but the above procedue is good enough for a basic test suite covering the required functionality. To run this in a practical way you are going to need a list of who is working on what stmt's or clauses, and you will need to assign and identifiers to test features, test cases, etc. Cheers Mark |