Our QA department is collecting a wish-list of requirements aim to increase testability which will be submitted to development leads.
I would like you to read thru it and comment if we missed anything of value.
The req. list should contain tools and test-hooks in the server that is typically needed to test software that serves as a server, serving many concurrent users, imagine a database client/server system . Functionality asked for will be internal to DEV/QA but not public to customers.
Draft requirement list
1. Performance Measurements
* measuring points at different points, aka states, for example job processing steps at;
A; parsing of request
B; processing of request
C; delivery of result to client.
purpose: verify performance for a given, known input in each build do not drastically decrease in performance
2. Processing Correctness Verification
* like above but outputs metadata at different states.
purpose: finds processing faults by differing a known oracle file with output from current build.
3. Memory/handle/thread- Leak Tools
* debug builds with symbolic information.
purpose: a verifiable call stack with objects that are leaked
Are there other types of (unit)tools or test-hooks than mentioned above we should add to our wish-list?
Can all types of test above be automatically tested in an unattended fashion?
Which of above test types cost most labour, to implement?
Any pointers to good reading on what tools that QA could ask Dev dept for is much appreciated.
Any input on Perl modules or similar that helps in above areas is much apreciated too.
ISEB Foundation in Software Testing Certified