On Sat, 26 Jan 2002, Gunther Birznieks wrote:

> I agree that testing is great, but I think it is quite hard in practice. 
> Also, I don't think programmers are good to be the main people to write 
> their own tests. It is "OK" for programmers to write their own tests but 
> frequently it is the user or a non-technical person who is best at doing 
> the unexpected things that are really were the bug lies.

My experience is that the best testers come from technical support,
although this is not to suggest that all technical support individuals
are good at this; even among this group, it's rare.  Users or other
non-technical people may find a few more bugs, but frequently, the
non-technical people don't have the ability to correctly convey how to
reproduce the problems, or even what the problem was.  "I clicked on the
thingy, and it didn't work."

This being said, users and tech support can't create unit tests; they're
not in a position to.

> Finally, unit tests do not guarantee an understanding of the specs because 
> the business people generally do not read test code. So all the time spent 
> writing the test AND then writing the program AND ONLY THEN showing it to 
> the users, then you discover it wasn't what the user actually wanted. So 2x 
> the coding time has been invalidated when if the user was shown a prototype 
> BEFORE the testing coding commenced, then the user could have confirmed or 
> denied the basic logic.

For your understanding of the spec, you use functional tests.  If your
functional test suite uses test rules which the users can understand,
you can get the users to double-check them.

For example, at work, we use a suite which uses a rendered web page as
its test output, and the input can be sent to a web page to populate a
form; this can be read by most people who can use the application.

Unit software is a means of satisfying a spec, but it doesn't satisfy
the spec itself - if it did, you'd be talking about the entire package,
and therefore refering to functional testing.  (At least, this is the
way I distinguish between them.)

Admittedly, we are a bit lacking in our rules, last I checked.

Ed

Reply via email to