10.12.2012 Views

Domain Testing: Divide and Conquer - Testing Education

Domain Testing: Divide and Conquer - Testing Education

Domain Testing: Divide and Conquer - Testing Education

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Perhaps this is in response to the "relationships" question (though in 2 of the 5 cases, it was<br />

explicitly labeled as Part E (a2529s1) or part 5 (a2529s5)<br />

Equivalence class table(s) that shows the complete equivalence class<br />

<strong>and</strong> boundary value analysis for the function under test.<br />

The equivalence class tables were similar across all subjects.<br />

• All of the subjects included the enumerated variables in the equivalence class tables. This<br />

makes little sense. The individual values are all "classes" of size 1. The risk descriptions<br />

associated with these individual items are information-free, for example " Failure of Slides<br />

sized for Letter" or " Failure to display the right slide" listed beside each possible value for<br />

"Slide Sized For." This reflects a weakness in the instructional materials. Students were<br />

encouraged to h<strong>and</strong>le enumerated variables in exactly this way, up to <strong>and</strong> including risk<br />

statements like "1) Failure to process option 1 correctly" <strong>and</strong> "1) Mish<strong>and</strong>ling of values<br />

outside the enumerated list of values" (Course materials, AppendixA.doc).<br />

• The analyses for all of the other variables also marched through the table in lockstep,<br />

virtually the same analysis by every tester, using almost the same order of cases, the same<br />

verbose risk descriptions, etc. as each other <strong>and</strong> as the course notes.<br />

It's hard to comment on this work.<br />

If one individual drew this table <strong>and</strong> filled it in this way, I'd probably be impressed. The tables<br />

are tidy <strong>and</strong> organized. The enumerated fields add noise, but if we ignore those, the analyses of<br />

the integer <strong>and</strong> floating point fields make it appear as though the person is thinking creatively.<br />

Whether or not these particular tests are likely to expose a bug is less interesting than the fact<br />

that the tester is thinking beyond the literal wording of the problem.<br />

The illusion evaporates when you see all of the answers together, <strong>and</strong> then review the course<br />

notes. The two additional dimensions (number of characters <strong>and</strong> treatment of nondigits) are<br />

prefabricated responses, laid out specifically in the course <strong>and</strong> applied mechanically. When I<br />

look for other evidence of creativity, I see none. Here are a few examples of things that I would<br />

expect from a sample of moderately experienced testers who claimed to have some experience<br />

with domain testing:<br />

• If I was considering the number of characters we could enter into a field, I'd paste several<br />

variations of a huge number of characters, such as 65533 0's (or spaces) followed by a 1.<br />

(If that yielded any response, I'd go to 2^32 characters or more.)<br />

• I don't think it's unreasonable for the tester to make a working assumption that the<br />

empirical limits on the variable (how many characters it accepted in testing) are the<br />

intended limits, but I would expect the tester to raise the issue, recognize the uncertainty<br />

involved, <strong>and</strong> try to check it or note that this should be checked.<br />

• Even if the instructions hadn't instructed the tester to consider output variables, it is<br />

common (<strong>and</strong> highly desirable) to check the result of a test. For example, when you set the<br />

page size, you don't know whether it has been correctly set until you try to use the new

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!