Ask the Expert

Effective Web page testing

How do we conduct effective testing in a Web page/form when we have many different fields -- textboxes, dropdown, ListBox, etc. Do we need to implement the equivalence class partitioning and boundary value analysis for all the fields?

Requires Free Membership to View

The short answer: All testing is risk-based; we cannot test everything. So we make educated assumptions. Certain fields may contain data which is not persisted in the database -- these fields might be lower-risk and perhaps do not need as much testing as others. Or the developer who coded the form may be poorly familiar with field validation and you may need to test more.

The long answer? Yes, each and every field should be tested. It is the challenge of a tester to rise to the occasion and develop methodologies and tools which make him or her more efficient and more effective. Through the use of automation, it may be possible to test each field for boundary and equivalence class partitions. Perhaps by writing code which creates the HTTP POST or GET, rather than filling in each form, this coverage can be obtained. Or using data-driven testing and Selenium or Watij (Watin, Watir, etc.) it might be possible to automated the form once and loop through a series (or generate a series of data programmatically) to test boundaries and equivalence classes. Also, making use of PICT tools (pairwise, interdependent, combinatorial testing) can help you use science to narrow the field of tests you need to run to gain adequate coverage.

Software testing resources:
How to test a payment gateway on a Web application

Granularity in test case design

Testing for performances, part 2: Build out the test assets

The key to rising above other testers and QA engineers is to tackle these challenges head-on. There are many who think testers are just developers who "couldn't cut it" as developers. Unfortunately, in some cases, this is true. But the true tester will take these complicated challenges and rise above them, and will come up with creative ways to apply their engineering skills to accomplish the work at hand. And even when it's not possible to test everything, a good tester will know through logic, experience, and science when testing is complete.

So the full answer is simple, but not easy. Be smart and make use of any and all tools around you. Figure out what you can accomplish in the time given, and get to it. Be scientific and think through the problem, and leverage technology to implement the solution. The goal is to have tested as much as possible in the time provided, and you will be amazed what you can do if you just take some time to figure it out.

This was first published in July 2008

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: