http://qs321.pair.com?node_id=136835


in reply to How do I test a CGI program properly?

... it has the functionality I want, and no defects as far as I can see.

Hm, how can you say that without having at least some testing process in place (and be it yourself clicking through the application)?

From your request, you are looking not for testing, but for an evaluation of the application from a user perspective. That is something very different.

For a test, you will have a specification (what must the program do to pass), and a process that (probably automatically) checks the conformance of the program to the specification. The second part ("automatically") tends to be somewhat hard to achieve in web environments, since you have so many components around that you need to run the application. Still, quite a bit can be done here by using the various LWP modules.

For an end-user-evaluation of the application, I would suggest to place a feedback button right there on every page of the application, and make sure that feedback from the users is picked up by somebody and acted promptly upon. If you do this (I mean, act promptly on user feedback), everything else is secondary, and you will soon have a better application (provided you get enough input at all). If you are not prepared to react promptly to user feedback, nothing else will help. A second nice feature is a "See FAQ" button right next to the feedback button, which leads to a document where you put the answers or workarounds for problems that you have already fixed (without that, you will get many duplicated reports).

If you need a *real* user review of your program (e.g., to establish the program fulfills its purpose as part of a contract or so), you better had established a questionnaire and test-run it already. I sincerely hope for you that you are not in this position (it does not sound like it, though).

Christian Lemburg
Brainbench MVP for Perl
http://www.brainbench.com