The online community for software testing & quality assurance professionals
  
Active Topics    Today's Topics
Sponsors:
Lost Password?

Home
BetaSoft
Jobs
Training
News
Links
Downloads

News Group:
software.testing


Testing
Automation
Performance
Engineering
Miscellaneous
Statistics
Poll
  QA Forums
  Functional Testing
  equivalance partitioning

Post New Topic  Post A Reply
profile | register | preferences | faq | search

UBBFriend: Email This Page to Someone! next newest topic | next oldest topic
Author Topic:   equivalance partitioning
handy_software_error
Member

Posts: 8
Registered: Mar 2003

posted 03-28-2003 01:06 AM     Click Here to See the Profile for handy_software_error   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by handy_software_error
can some one tell me what exactly is equivalance partitioning and how can it be used practically.

------------------

IP Logged

sathyanarain@yahoo.com
Member

Posts: 19
Registered: Sep 2002

posted 03-28-2003 05:11 AM     Click Here to See the Profile for sathyanarain@yahoo.com   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by sathyanarain@yahoo.com
HI,

This is Sathya. To answer your query,the concept of Equivalence Partitioning and Boundary Value analysis applies when you want to test validity / graceful inputs to be accepted by your application or system as a whole. First we need to distinguish valid and invalid equivalence classes. From that, apply boundary values to test the system. Most of the bugs encountered in Boundary value analysis. For eg., If age field in the application accepts 2 numeric digits only (requirement for eg.). Now to apply equivalence partitioning here you will be having valid equivalence classes such as 54, 20 , 9 etc., similarly you will have invalid equivalence classes such as -54, -9, 0, AB, 9AB-,999 etc., ...And to apply boundary value analysis on this...If you have limitation in age field say age should not be greater than 55..Then you will check for lower and upper boundary inputs such as 54, 56 for 55.

Like this the concept of Equivalence Partitioning and Boundary value analysis is always helpful in testing the validity of inputs in the software application. One significant use of these concept is that when you test Date function in your application this will be very much useful.

Think I have narrated the significance of the concept you had asked for...Hope this will help you.

Thanks & Regards,
Sathya.

-------------------------------------

Testing - A critical discipline of finding fault with the system

------------------
Sathya Narayanan G

IP Logged

ljeanwilkin
Member

Posts: 42
Registered: Jan 2003

posted 03-28-2003 07:44 AM     Click Here to See the Profile for ljeanwilkin   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by ljeanwilkin
Generally, equivalence partitioning ensures you exercise at least one valid and one invalid test per test requirement. Boundary testing tests all real/implied limits of the requirement.

For example:

You have a field with a valid range of -1
to +1. Therefore, in equivalence partitioning, you would select one valid value within the range (perhaps 0) and one invalid value, like 2.

With boundary analysis, using the same example, you test the full boundary of the range. So you would select -1, +1, -2, +2, null, space, and an invalid character (such as "&").


For this particular example, boundary testing provides the best test coverage.
I have several slides I use in classes that demonstrate both techniques against a variety of data (the range example above is just the simplest to explain). If you'd like more information, please drop me an EMail, and I'll ship it to you.

- Linda

------------------

IP Logged

jimhazen
Member

Posts: 82
Registered: Jan 2002

posted 03-30-2003 07:20 PM     Click Here to See the Profile for jimhazen   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by jimhazen
quote:
Originally posted by ljeanwilkin:
Generally, equivalence partitioning ensures you exercise at least one valid and one invalid test per test requirement. Boundary testing tests all real/implied limits of the requirement.

For example:
You have a field with a valid range of -1
to +1. Therefore, in equivalence partitioning, you would select one valid value within the range (perhaps 0) and one invalid value, like 2.

With boundary analysis, using the same example, you test the full boundary of the range. So you would select -1, +1, -2, +2, null, space, and an invalid character (such as "&").


For this particular example, boundary testing provides the best test coverage.
I have several slides I use in classes that demonstrate both techniques against a variety of data (the range example above is just the simplest to explain). If you'd like more information, please drop me an EMail, and I'll ship it to you.

- Linda


Close, but....

Equivalence deals with reducing the set of inputs for the validation range. Say you have a field that can handle a numeric range of 100 to 1000. To test it 'fully' you would use the entire input range (100 to 1000). That would take too much time and effort. In equivalence class partitioning you reduce the set of inputs to 3 (100, 500, and 1000), because the range is satisfactorily covered with only the 3 inputs instead of the whole range. When you begin to go outside of the range then you hit into boundary value type tests.

Boundary value is exactly that, testing around the boundaries. In the previous example you would test the lower and upper ranges around the boundaries (100 & 1000). The lower boudaries are 99, 100, 101 because you are at the boundary region and test around it. Thus the upper boundary would be 999, 1000, 1001.

You test just below the boundary, at the boundary, and just above it. Now to add a little more oomph to the test you could go to extremes (lower input could be 1 or -1, and upper could be 1100 or 5000) just to do a little more torture.

Typically what happens is that the two are combined like so: -1, 99, 100, 101, 500, 999, 1000, 1001, 5000.

Finally, when you are testing specifically for error conditions you are performing Error Handling tests. These can involve known error condition or error guessing tests. You purposely try to inject an error into the processing and see how the system handles it. Does it catch it and handle it correctly, does it not catch and dies gracefully, or does it not catch it and throws up all over itself and falls over dead.

Phew... how's that for a text book answer.

Jim

P.S. Jean, not taking a jab at you. Just clarifying things.

------------------

IP Logged

handy_software_error
Member

Posts: 8
Registered: Mar 2003

posted 03-30-2003 11:39 PM     Click Here to See the Profile for handy_software_error   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by handy_software_error
Thanks for the enlightenment. What would be the best way to design such a test?

------------------
Gary Hukkeri

IP Logged

deepend
Member

Posts: 8
Registered: Feb 2002

posted 04-01-2003 09:44 AM     Click Here to See the Profile for deepend   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by deepend
I find the easiest way is to draw a line with minus infinity at one end and plus infinity at the other, then mark on the boundaries.

------------------
Strive not to be a success, but rather to be of value - Albert Einstein.

IP Logged

jimhazen
Member

Posts: 82
Registered: Jan 2002

posted 04-01-2003 06:49 PM     Click Here to See the Profile for jimhazen   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by jimhazen
quote:
Originally posted by deepend:
I find the easiest way is to draw a line with minus infinity at one end and plus infinity at the other, then mark on the boundaries.

I assume you do that on a logarhythmic scale, and plot it as 2nd order derivative that will asympatote correctly.

Of course again, you could do it as the standard deviation of the mean while determining the linear regression.

Naw, the best way is to super cool the CPU in order to reduce the capacitence of the wire so that the molecular excitement is reduced to its lowest level.

Jim

------------------

IP Logged

Jeanj
Moderator

Posts: 1476
Registered: Feb 2000

posted 04-01-2003 07:47 PM     Click Here to See the Profile for Jeanj   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by Jeanj
quote:
Originally posted by jimhazen:
I assume you do that on a logarhythmic scale, and plot it as 2nd order derivative that will asympatote correctly.

Of course again, you could do it as the standard deviation of the mean while determining the linear regression.

Naw, the best way is to super cool the CPU in order to reduce the capacitence of the wire so that the molecular excitement is reduced to its lowest level.

Jim



...what....? Uh yup, clarified... perfectly!

------------------
-- Jean

"Never doubt that a small group of thoughtful, committed people can change the world.
Indeed, it is the only thing that ever has."
Margaret Mead

IP Logged

jimhazen
Member

Posts: 82
Registered: Jan 2002

posted 04-02-2003 07:47 AM     Click Here to See the Profile for jimhazen   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by jimhazen
quote:
Originally posted by Jeanj:
...what....? Uh yup, clarified... perfectly!

Yeah, clear as mud. I figured one smart remark deserved another on 4/1.

Jim

------------------

IP Logged

All times are PT (US)

next newest topic | next oldest topic

Administrative Options: Close Topic | Archive/Move | Delete Topic | Top
Post New Topic  Post A Reply
Hop to:

Contact Us | BetaSoft Inc. | Privacy Statement

Copyright © 1997-2003 BetaSoft Inc.


Ultimate Bulletin Board 5.45c