What is Boundary Value Analysis and Equivalence Partitioning?

By Vijay

By Vijay

I'm Vijay, and I've been working on this blog for the past 20+ years! I’ve been in the IT industry for more than 20 years now. I completed my graduation in B.E. Computer Science from a reputed Pune university and then started my career in…

Learn about our editorial policies.
Updated March 6, 2024

Boundary Value Analysis and Equivalence Partitioning explained with a simple example:

Exhaustive testing for each set of test data is practically impossible due to time and budget constraints, especially when there is a large set of input combinations. QA people should judiciously design test cases that will take care of all possible test data combinations.

Test case design techniques should select test cases that are most likely to find bugs, from a large number of available test cases. QA people can use Boundary value analysis and Equivalence partitioning to pick the appropriate test data and test cases.

Boundary Value Analysis and Equivalence Partitioning are both test case design techniques in Black-Box Testing.

Let’s start!!

Test Case Design Techniques

Boundary Value Analysis And Equivalence Partitioning

This article will explain all about Boundary Value Analysis and Equivalence Partitioning in detail, along with simple examples for your easy understanding.

Equivalence Partitioning

This black-box testing technique is also referred to as Equivalence Class Partitioning (ECP). This test case design technique is typically used to reduce the total number of test cases to a finite set of testable test cases, still covering maximum requirements.

In this method, the input domain data containing a range of input values is divided into different equivalence data classes (at times also referred to as split sets). Test cases should be written in such a way that they cover each equivalence partition (also called equivalence data class) at least once.

During test case execution, each value of every equivalence partition must display the same output behavior as the other one. This method is established on the assumption that if one condition/value in an equivalence partition passes, then all others will as well. Similarly, if one of the partition’s conditions fails, the partition’s other condition/value will likewise fail.

In short, it is the process of picking all possible test cases and carefully placing them into equivalence classes. One test value is picked from each class while testing.

This means a QA person tests a random value from each defined equivalence data class and if the verification of the output value is successful for that input value, then the entire equivalence class/partition is considered valid and vice versa.

Example #1: If you are testing for an input box accepting numbers from 1 to 1000, then there is no use in writing thousands of test cases for all 1000 valid input numbers plus other test cases for invalid data.

Using the Equivalence Partitioning method discussed above, test cases can be divided into three sets of input data, called equivalence data classes. Each test case is representative of the respective equivalence class.

So in the above example, we can divide our test cases into three equivalence classes of some valid and invalid input values.

Test cases for input box accepting numbers between 1 and 1000 using Equivalence Partitioning:

#1) Valid data test case (value between 1 and 1000): This includes one input data class with all valid inputs. Pick a single value from the range of 1 to 1000 (say 99) as a valid test case. If you select other values between 1 and 1000, then the result is going to be the same. So one test case for valid input data should be sufficient.

#2) Invalid data test case (value less than 1): Here, input data class with all values below the lower limit. i.e., any value below 1 (say zero), as an invalid input data test case.

#3) Invalid data test case (value greater than 1000): Input data with any value greater than 1000 (say 1001) to represent the invalid input class and the third equivalence class.

Example #2: Testing an input box for a mobile number accepting ten digits (i.e. length of input value has to be ten).

Again, the input value range can be divided into three equivalence data classes using the equivalence partitioning technique; one valid and two invalid classes.

Test cases for mobile number input box accepting ten digits:

#1) Valid data test case (= 10 digits): Enter the exact 10 digits, say 1234056789

#2) Invalid data test case (< 10 digits): Enter phone number with 9 digits, say 123456789

#3) Invalid data test case (> 10 digits): Enter phone number with 11 digits, say 12340567899

EquivalencePartitioning_

Example #3: Consider this scenario: For a bank savings account, a 4% interest rate is given if the account balance is between $01 and $200, 7% rate of interest is given if the account balance is in the range of $201 to 900, and 9% interest rate is considered for account balance is $901 & above.

For the above scenario, we can identify three valid equivalence classes and one invalid.

Test cases for the above (interest rate) scenario:

#1) Invalid data class: Account balance is negative (say -$0.10)

#2) Valid data class 1, (for 4% interest rate): Account balance is in the range of $01 to $200

#3) Valid data class 2, (for 7% interest rate): Account balance is in the range of $201 to $900

#4) Valid data class 3, (for 9% interest rate): Account balance is $901 and above

Note: Another invalid partition on the right of the data set can be identified. Also, invalid cases for non-numeric (alphabet) data can be considered.

So using Equivalence Partitioning, all possible test cases can be categorized into four classes (referring to the above-mentioned example #3). Test cases with other values from any class should produce the same result.

While designing test cases, one representative from each input data class is selected. Test case input data values are selected in such a way that the largest number of attributes of the equivalence class can be exercised.

Equivalence Partitioning uses the fewest test cases to cover the maximum requirements.

Boundary Value Analysis

Boundary Value Analysis (BVA) is one of the widely used test case design techniques, as it is widely believed that the input values at the extreme ends (boundaries) of the input domain cause more errors in the system. These boundary values (extreme ends) could be maximum-minimum, lower-upper, start-end, just inside–just outside.

More application errors occur at the boundaries of the input domain, meaning more failures occur at lower and upper limit values of input data.

The ‘Boundary Value Analysis’ testing technique is used to identify errors at boundaries rather than finding those that exist in the center of the input domain. This kind of testing of boundary values (or boundaries) is also referred to as ‘boundary testing’.

The basic principle behind this technique is to choose input data values:

  • Just below the minimum value
  • Minimum value
  • Just above the minimum value
  • A Normal (nominal) value
  • Just below the maximum value
  • Maximum value
  • Just above the maximum value

Boundary Value Analysis is the next part of Equivalence Partitioning for designing test cases where test cases are selected at the edges/boundaries of the equivalence classes. Test cases are designed to handle both valid and invalid boundary values which can give proper coverage.

Every equivalence class partition has its maximum and minimum values, which are called the boundary values of a partition.

  • Valid boundary value refers to the boundary value of a valid equivalence partition.
  • Invalid boundary value refers to the boundary value of an invalid equivalence partition.

Example #1: Test cases for input box accepting numbers between 1 and 1000 using Boundary value analysis:

#1) Test cases with test data exactly as the input boundaries of the input domain, i.e. values 1 and 1000 in our case.

#2) Test data with values just below the extreme edges of input domain, i.e. values 0 and 999.

#3) Test data with values just above the extreme edges of the input domain, i.e. values 2 and 1001.

Example #2: Input box (say for accepting age) accepts values between 21 and 55.

BVA_Ex1

Valid input values: 21, 22, 35, 54, and 55

  • Minimum boundary value: 21
  • Maximum boundary value: 55
  • Value at the center (nominal value): 35

Invalid input values: 20, 56

Test cases for input box accepting values between 21 and 55 using Boundary value analysis:

  1. Invalid value test case: Enter value = 20
  2. Valid value test case: Enter value = 21
  3. Valid value test case: Enter value = 22
  4. Valid value test case: Enter value = 35 (additional test case to check value almost at the center, also called nominal value)
  5. Valid value test case: Enter value = 54
  6. Valid value test case: Enter value = 55
  7. Invalid value test case: Enter value = 56

Example #3: Input box for the password accepts a minimum of 8 characters and a maximum of 14 characters (the length of input value should be in the range of 8 to 14).

Partition

BVA_Ex2

Valid input value length: 8, 9, 11, 13, and 14 characters
Invalid input value length: 7, 15 characters

Test cases for password input box accepting minimum 8 characters and maximum 14 characters using Boundary value analysis:

  1. Invalid input value length test case: Enter 7 characters
  2. Valid input value length test case: Enter 8 characters
  3. Valid input value length test case: Enter 9 characters
  4. Valid input value length test case: Enter 11 characters
  5. Valid input value length test case: Enter 13 characters
  6. Valid input value length test case: Enter 14 characters
  7. Invalid input value length test case: Enter 15 characters

Boundary Value Analysis is often referred to as part of Stress and Negative Testing.

Note: There is no hard-and-fast rule to test only one value from each equivalence class you created for input domains. You can select multiple valid and invalid values from each equivalence class according to your needs and previous judgments.

For instance, if you divide 1 to 1000 input values invalid data equivalence class, then you can select test case values like 1, 11, 100, 950, etc. The same is true for other test cases having invalid data classes.

Boundary Value Analysis VS Equivalence Class Partitioning

Equivalence Class PartitioningBoundary Value Analysis
Valid & Invalid equivalence classes (ranges) of the input data domain are considered for test design & execution.It considers the following for input data values:
• Minimum – 1
• Minimum
• Minimum + 1
• Nominal
• Maximum - 1
• Maximum
• Maximum + 1
It considers input data values from a range of equivalence classes (intervals) of the input data domain.It considers input data values based on the defined boundaries of the input data domain.
It is significant in identifying bugs in-between the defined equivalence classes.It is significant in identifying bugs at the boundaries of the input data domain.
It can be used at any stage of the testing process.It is specifically used as part of stress and negative testing.
It is important to identify equivalence classes correctly to make effective use of this technique.Determining correct boundary conditions plays a vital role in effectively using this technique.

The software testing process can be benefitted by using Equivalence class partitioning and Boundary Value Analysis

Using Test Case Design Techniques: Benefits & Challenges

Benefits

Software testing process can be benefitted by using Equivalence class partitioning and Boundary value analysis techniques in several ways:

  • These techniques are used to break down a huge number of test cases into smaller, more manageable test data sets. This will further help in saving time and resources. Testing only representative and critical data input value helps in avoiding redundant test cases, which in all practically do not add any value to test coverage.
  • These techniques facilitate increasing test efficiency and effectiveness by testing with the most likely and critical input data values, which are likely to detect more bugs in the application.
  • These techniques provide very explicit logical criteria for identifying test scenarios and test cases, without affecting testing effectiveness.
  • Test design and execution are more simplified, as these techniques provide a systematic and logical approach to the use of the input domain. It enables easier identification and selection of test cases with less complexity and ambiguity.
  • Testing of applications that consist of numerous calculations or those with lots of combinations of input data is supported by using these testing techniques.

Challenges

Challenges of Equivalence Partitioning:

  • One of the main challenges of using equivalence class testing is that it requires a very good understanding of the system specifications (requirements), functionality, and the expected behavior of the application under test. It also requires good domain knowledge.
  • It is essential to create a formal method to specify equivalence classes, which can be quite difficult for large and complex features.
  • This technique is most appropriate while creating new test cases/test data sets from scratch, as converting existing test cases could be time-consuming and difficult.
  • Equivalence class partitioning may not be suitable for non-functional testing, such as performance, stress, or usability testing, where different variations of the system are to be tested.

Challenges of Boundary Value Analysis:

  • This testing technique may not be useful for testing input domains that are complex and have multiple boundaries, interactions, or dependencies.
  • It may necessitate some assumptions about the input data domain, which may or may not be accurate or consistent.
  • As with equivalence partitioning, the boundary value analysis technique also requires a proper understanding of system specifications. Many times, system requirements are not quite clear or the quality and completeness of the specifications are not good enough.
  • The boundary value analysis technique is not suitable for Boolean variables, Boolean data type has values 0 and 1.

Conclusion

Identifying the right test cases and the right number of test cases is very crucial for the testing process. As seen from the above discussion, Boundary Value Analysis and Equivalence Partitioning techniques can design effective test cases that are likely to detect bugs.

Hope that you now have a fair bit of understanding of the Boundary Value Analysis and Equivalence Partitioning techniques.

Please share your thoughts in the comments section below!

PREV Tutorial

Was this helpful?

Thanks for your feedback!

Recommended Reading

257 thoughts on “What is Boundary Value Analysis and Equivalence Partitioning?”

  1. Thanks 4 providing such a good material…

    and also very thankful to kishor, shuhas,vijay and vijetha. they are sharing such a very important knowledge between us..

    Reply
  2. Guys,
    Please answer for it:

    In a system designed to work out the tax to be paid: An employee has £4000 of salary tax free. The next £1500 is taxed at 10% The next £28000 is taxed at 22% Any further amount is taxed at 40% To the nearest whole pound, which of these is a valid Boundary Value Analysis test case? a) £1500 b) £32001 c) £33501 d) £28000

    Reply
  3. Hi to every one,

    This kind of articles help in Testing and

    we must share the real time experience also

    so i preparing that one as soon as i share to everyone

    thanks

    good luck to everyone

    Be prepare for coming time in IT

    Reply
  4. anybody say about latant bug,and golden bug definition and the differents between then…. Please and thanks in advance…

    Reply
  5. Suhas
    Nice thought!!
    As per my knowledge we can use BVA for both the classes.
    For eg: If I consider 5-50 a range then my
    valid class: 5-50
    invalid class: lets say =49.99 also we use the same technique.

    Reply
  6. I have often seen the above example being provided for BVA and EQP.
    However, I would like to provide another example that would demonstrate the 2 techniques better.
    Let us assume that there is a field called “Age” that has inputs from 1-80.
    Based on the age, customer is provided discount on tickets.
    1-18: 50%
    19-50: 10%
    51-80: 40%

    Applying BVA, the test cases would be 0, 1, 2, 79, 80, 81 and 1 random number from within the range let’s say it is 45.

    Applying EQP, the test cases would be 1 number from each of the classes let’s say,
    5 from 1-18 class,
    29 from 19-50 class,
    72 from 51 to 80 class.

    Besides these, applying BVA again, the internal boundaries also should be tested, hence, we should also include 18, 19, 50 and 51 in our test cases.

    Thus, overall, test cases should be for 0, 1, 2, 5, 18, 19, 29, 45, 50, 51, 72, 79, 80, 81 (total of 14).

    Since the number of test cases is high, we can easily optimize the same and reduce it to the following set:
    0, 1, 2, 18, 19, 29, 50, 51, 79, 80, 81 (total of 11).

    Reply
  7. Suhas
    Consider below example
    Suppose my valid class is 10-100
    If I am asked to write test cases, I would apply BVA to this class to minimize my number of test cases. Otherwise it would go from 10 to 100
    Using BVA my test cases have reduced to SIX. Three for min value and three for max value.

    9,10,11 and 99,100,101

    Regards
    kishore

    Reply
  8. Can anyone help me out on below questions:

    Below you will find the requirements to identify the Account Diversity Grade of a user. Read the
    requirements carefully and identify what test users you need to setup in order to completely
    test and make sure all the below requirements are covered. (Note: you should identify the
    optimum (minimum) number of users needed to test all of the requirements)
    Requirements:
    A user can have different types of loan accounts. Now we grade a user’s Account Diversity based
    on two factors.
    1) loanTypeCount
    2) totalAccounts
    loanTypeCount = the number of different (distinct) LoanType values for all accounts that the
    user has.
    However do not include LoanType = Unknown & Collections but include all others
    Applicable values for LoanType are ( Home Loan, Heloc, Credit Card, Car Loan, Collections,
    Unknown)
    totalAccounts = total number of loan accounts user has (do not include LoanType = Unknown &
    Collections but include all others)
    example-> if user has 3 credit cards and 2 home loans and 1 Collection account, then
    totalAccounts = 5 and loanTypeCount = 2)
    The logic to determine accountDiversityGrade is the following:
    If totalAccounts> 20 or loanTypeCount >= 4, accountDiversityGrade = A
    Else if totalAccounts> 10 or loanTypeCount = 3, accountDiversityGrade = B
    Else if totalAccounts>= 5 or loanTypeCount= 2, accountDiversityGrade = C
    Else if totalAccounts > 0 or loanTypeCount = 1, accountDiversityGrade = D
    Else accountDiversityGrade=null (n/a)

    Reply
  9. Hi,

    Can anyone tell me how many testcase can we write for the below scenario in Equivalence Partitioning and Boundary Level

    Marks – 0-100
    Student type — First Time/Repeat
    Grade – F, D, C, B, A
    First Time
    0-40 – F; 41-50-D; 51-60-C; 61-70-B; 71-100-A
    Repeat
    0-50 – F; 51-60-D; 61-70-C; 71-80-B; 81-100-A

    Reply
  10. dear lakshmi,

    your approach is correct,use some more combinations like alphanumeric+specialcharacters and
    alphabets+small letters+numericals+special characters.

    Reply
  11. All r telling about how to write test cases for numerics,alphabets and for spl char.s or mixed of 3.
    I have a doubt, that is, bva on pages can be done by manually?

    Reply
  12. Nice one, Thanks for Sharing !

    May be we need to correct one small typo in example :

    Updated statement :
    For Example, if you divided 1 to 1000 input values in a valid data equivalence class, then you can select test case values like 1, 11, 100, 950, etc. Same case for other test cases having invalid data classes.

    Reply
  13. Hi,
    I want to know whether I have written correct ECP and BVA values for the condition if(a>b) and both are of type INT32 .
    a>b Valid class
    a==b Invalid class
    a<b Valid class

    and values are like b,b+1,b-1,minium and maximum and in the ECP can we change the both variable value or we should keep one as a constant to have good ECP
    Please help me .

    Thanks

    Reply
  14. Awesome explanation for Boundary value Analysis and Equivalence Class partitioning. Easy to understand.
    Thanks a ton for the clear explanation.

    Reply
  15. I have some confusion between ecp and bva,both are looking same,in ecp we cover bva also,please can anyone explain with example

    Reply
  16. One point to add to this article is the concept that granularity matters in boundary testing. In the example provided their is an assumption that only whole numbers are permitted, but what if decimals were allowed? If we could input 1.0 to 1000.0 then the granularity of the boundary condition changes. It is no longer valid to simply say the boundaries are min-1, min, min+1, max-1, max, max+1. In this example we have to go down to the 1/10ths to adequately test the boundary condition (0 isn’t sufficient for min-1, but .9 is).

    Granularity becomes even more important when we consider boundary conditions related to dates and times. If I need to test for a condition where AGE > 65 years is my max+1 boundary condition 66 years, 65 years and 1 day, 65 years and 1 hour, 65 years and 1 minute, etc?

    When we test for boundary conditions we must ALWAYS consider and understand the granularity of the boundary condition in order to provide a valid boundary test.

    Reply
  17. Said nicely and simple. I’d like to add one more check (I was asked that in the interview) – would probably be a good idea to check the values somewhere in the middle. Let’s say if we’re testing values 1 to 100,000 we should also look into 1,000; 10,000, ect.

    Reply
  18. Can you please any one explain the answer for my question?
    Postal rates for ‘light letters’ are 25p up to l0g, 35p up to 50g plus an extra l0p for each additional 25g up to l00g.
    Which test inputs (in grams) would be selected using equivalence partitioning?
    a. 8,42,82,102
    b. 4,15, 65, 92,159
    c. 10,50,75,100
    d. 5, 20, 40, 60, 80

    Reply
  19. @Kishore,

    Do we apply the BVA for all the classes i.e valid class as well as invalid class? Or is it enough to apply the BVA for valid class only. It would be great if you could explain this with an example.

    Regards, Suhas M.

    Reply
  20. BVA is something it covers the valid and invalid class of EP.

    For ex: 60 – 120
    for equivalance partitioning we go by the value
    59 60 61 119 120 121
    59.9 60 60.1 70 119.9 120 120.1
    In case of value 59 is a invalid class, similarly 121 is an invalid class.

    Could anyone clear me if i am wrong?

    Reply
  21. Suppose password field allows length of 3 to 9 characters. Then as per BVA we will test for characters having length as 2,3,4 and 8,9,10. Interviewer question was Why to test for 4 and 8 when we already test for 3 and 9, isn’t it time consuming?

    Reply
  22. @Kishore
    I am not clear yet, 🙁
    For a valid range of input – if you apply BVA, its simililar to EP. So why do we need to apply EP and then BVA, because if you directly apply BVA to the above example it goes well.

    I would like to explain what I have understood by BVA and EP by slightly modifying the above example.

    Lets say a system accepts the input as number that ranges form 100-100000 or alphabetical/alphanumeric input with 3-6 char.
    Now my classes will be
    1.Only numbers.
    2.Only alphabets.
    3.Alphanumeric.
    4.Numbers with special characters.
    5.Alphabets with special characters.
    6.Alphanumeric with special characters.
    Out of this if you apply BVA for 1,2 and 3 its good enough.

    Let me know if my understanding is correct. If you think I am wrong helpme understanding with explaining your views with my example.

    Regards, Suhas M.

    Reply
  23. @Sirisha

    Types of Metrics:
    Process & Product/Project (depends upon application)

    Under process metrics: Evaluates the efficiency of the process you use for your production (Project)

    Effort, Schedule, Quality (DRE)

    Product/Project:

    Can have DRE also here, Phasewise defect removal, defect density and etc.

    ….mm Tracability Matrix is used for trace the requirements. It’s an verification techniques, not metric.

    Reply
  24. Hi Vijay

    Candid to the comments does it really works. Since if you take a text box of 1 -1000 characters, then will it possible to execute without entering 1000 characters at an instant to verify whether it allow or not. If system allows then what’s the necessity to go for in between values (Equivalence Partitioning) since it allows all the 1000.

    Is am byte confused here……? Can you please clear my doubt?

    Also does really a Test Engineer use this strategy to prepare test cases for Black Box Testing?

    Reply
  25. @LAKSHMI

    Hi Lakshmi,

    If u do the certification in Testing that will give good weightage to ur Resume.

    Suppose if any organization is following RUP model those organizations will give more importance to Certified Test Engineers.

    If u r intrested to do certification in S/w Testing u can mail me at srikanthvelivela@gmail.com for further details.

    Reply
  26. Order numbers on a stock control system can range between 10000 and 99999 inclusive. Which of the following inputs might be a result of designing tests for only valid equivalence classes and valid boundaries:
    1000, 5000, 99999
    9999, 50000, 100000
    10000, 50000, 9999
    10000, 99999
    which is correct?

    Reply
  27. Part of my comment has gone missing when posted. Therefore, I am posting my comment again:

    It is believed that EP is a good technique to reduce the number of test cases to a bare minimum. Though EP is related to efficiency of test case design, I think that we should be aware that using EP could prevent the discovery of defects related to particular data value(s) in a range. Consider a date input text box (with a calendar control) that accepts dates between 1 Jan 1970 and today. We have three classes (also called partitions) here:
    Less than or equal to 31 Dec 1969, 1 Jan 1970 to 6 Nov 2008, greater than or equal to 7 Nov 2008.

    By just selecting one test data value from each class might not be able to exercise the application with other interesting values e.g. 29 Feb 2008 or any particular value not handled correctly by the application.

    Inder P Singh

    Reply
  28. Can the Equivalence analysis have the following casses added under invalid inputs:

    1) input data with letters (a-z),(A-Z),Special characters too??

    Reply
  29. i want to know that what is the main difference between EP and BVA. that mean which strategy should be perform and why? why these both are different from each other?
    any one can explain my problem?

    Reply
  30. Could anybody pls help me in answering the following question – how many test cases will be generated for three check boxes and one button which was questioned me in an interview.

    Reply
  31. If we have four fields like name, phone number, city and state then how many total number of test cases are required ? Please advise. Thank you…

    Reply
  32. EQUIVALENCE PARTIONING IS GIVEN PRESSMAN………IF YOU WANT ANYONE WANTS THE 3 POINTS OF THIS TELL ME I WILL EXPLAIN………..

    Reply
  33. In practical , while we test for a particular requirement, one have to test 1st from the middle , its the last step of completeion of testing when we use BVA.,

    Reply
  34. @Geethika ,
    Though they sounds similar there is a difference between BVA and EP testing techniques

    1. EP(Equivalence partitioning)
    finding the partitions or combinations (valid /invalid )

    Eg :
    To check for the valid and invalid partitions between 10 – 100
    Valid partion : 10 – 100
    Invalid Partitions : 100
    — While preparing the testdata if we select number between 10- 100 , then we are testing with valid data. here system should behave as documented
    — If we are selecting value 100 then we are testing with the invalid partition (negative testing) , in this system should have some exception handling (error messages/popups)

    2 . BVA(Boundary value analysis) :
    Testing with the boundary values

    Eg : considering the same example ,
    to check with values 10-100
    –Valid data : 10 -100 : system going to behave same for all the values from 10 -100 , so we dont test all the values , we just check with 10 and 100(we got 2 testdata)
    — Invalid date 100 , so we take 9 and 101(as additional negative testdata) for this system should throw error messages .

    Note :
    I Know both sounds similar , but we can say Equivalence partitioning is part of BVA , so its upto tested to select the technique for testing .

    Like if you are not worried about negative cases , then you can go for EP cases (valid partition).
    if you want to test the negative as well then you can go for BVA.

    There are multiple external parameters on which we should choose the best technique.like
    1. Time
    2.Expected Coverage
    3.logic complexity etcc..

    Reply
  35. hi
    >this is roma … i want your help… i want to know the test cases for Microsoft outlook 2007..i hope you will help me..
    >i prepared test scenario which i mentioned below:-

    >please help me…urgently
    >thanks
    >
    >Ms. Roma
    >
    >1 Always BCC •Performs a CC or a BCC automatically for every email.
    >•Customize the email messages that get CC’ed or BCC’ed.
    >2 Attachment Reminder • Check your outgoing email for keywords and prompt you in case you
    > forgot to attach a file.
    >• Keywords are configurable.
    >• Intelligently considers signature files.
    >3 Attachment Save •Replaces attachments with links.
    >•Reduces Outlook storage spaces.
    >•Improve Outlook performance.
    >•Delete the attachment when deleting an email.
    >4 Duplicate Appointment Remover •Removes duplicate appointments.
    >•Customizable
    >•Fast
    >5 Duplicate Contact Remover •Removes duplicate contacts.
    >•Customizable
    >•Fast
    >6 Duplicate Email Remover •Remove duplicate emails in Microsoft Outlook.
    >•Customizable
    >•Fast
    >7 Duplicate Note Remover •Delete duplicates or move them to a folder.
    >•Comparisons of two appointments based on subject, body and color.
    >•Works with a single folder or multiple folders at once.
    >8 Duplicate Task Remover •Delete duplicates or move them to a folder.
    >•Comparisons of two tasks based on subject, due date, categories,
    > contacts, company, body and start date.
    >•Works with a single folder or multiple folders at once.
    >•Works with Microsoft Outlook 2013, Outlook 2010 and Outlook 2007.
    >9 Follow Up Reminder •Reminds you if you have not heard back from someone.
    >•List all your pending reminders with a click of a button.
    >•Add follow up reminders to any email in any Outlook folder.
    >•Quick Snooze.
    >10 Remove Subject Prefix •Remove redundant ‘Re:’, ‘Fw:’ etc. from message subjects.
    >11 Reply To All •Prompts you when you reply to everyone. Avoid sending out information
    > you may not want to share with everyone.
    >• Prevent Outlook from including your name and email address in a reply to all message thus avoiding extra copies.
    >• Prompts with a confirmation message if you were BCC’ed on the
    > message.
    >12 Save as PDF •Saves all your emails as PDF files.
    >•Saves attachments as PDF files.
    >•Save the emails on receipt or batch mode.
    >•No other PDF printer driver needed.
    >13 Send Individually •Sends email marketing to each of your recipients, one at a time.
    >•Adds a convenient “Send Individually” Outlook button.
    >•Easily handles distribution lists, contact groups, and Excel lists.

    Reply
  36. I think this misses the heart of equivalence class partitioning. A number range does not offer a good opportunity to describe equivalence classes because 1-1000 everything is equivalent. One can only understand the technique when some are not equivalent.

    Let’s say one is testing an eCommerce application and there’s a drop-down for selecting the state. Some states have no tax, others have tax, and some the company cannot ship to. Equicalence class partitioning might lead you to choose at least one state each from:
    0 tax + can ship
    0 tax + cannot ship
    >0tax + can ship
    >0tax + cannot ship

    0 tax and >0 tax are different because they have different semantics to the app. 5% tax and 6% tax yield different results but you expect the behavior to be similar (tax amt. should be tax % * taxable total) and testing every possible combo 5%, 5.5%, 6%, etc. might not be practical.

    As always, go back to the classics. Glenford Myers “the art of software testing” is a good resource.

    Reply
  37. Its very nice article which is explained in simple words so that every one can understand. Nice work Ajay!! Thanks for sharing this gr8 article..Keep it up!!

    Reply
  38. Checking for the nor, max+, max-, min+,min- are the boundary values
    Partitioning the inputs based on requirements is equivalence partitions.

    Thanks for the clear information abt both techniques.

    Reply
  39. hi…very nice article with good explanation with simple examples in simple language, so that every one can understand it easily.

    Reply
  40. hello sir/madam,

    actually, how many types of “Test Reports” are there?

    i came through different terminology like—

    Test summary reports
    Test execution reports
    Test status reports
    Test log reports
    Test daily, weekly reports

    These all mean same??? if not please explain me and also explain me if there are any other reports that come under above list. in the least case please provide me exact link. Thanks in advance.

    Reply
  41. Good explaination and really simple to undestand.So in the boundry values how many test cases(minimum) that we have to write according to above eg.????

    Reply
  42. Jaya, the concept of BVA is to design the test cases to test extremes of input domain i.e. min, max values so this cannot be used to page testing

    Reply
  43. hi bithika,

    you can go for ISTQB(foundation level) first.After
    that you can go for Advanced level.Tthen u can be called as ISTQB certified functional tester/technical tester.
    Thank u

    cheers,

    CH.GIRISH CHANDER RAJU
    CERTIFIED TEST ENGINEER

    Reply
  44. Hi,

    I have 4 yrs of experience in manual testing. Which certification will help me to shape up my career graph.

    regards
    Bithika

    Reply
  45. Good post, I have to say the Equivalence Partitioning technique has saved me from writing and executing a large number of unnecessary tests.

    Reply
  46. Hi,
    Can someone help me to write BVA(Boundary Value Analysis) for input field that accepts only 10 digit Phone numbers? What will be the boundary numbers?

    Reply
    • test case 1: Invalid if digits >=11 (example 98765432101)
      test case 2: valid if digits =10 (example 1234567890)
      test case 3:invalid if digits <=9 (example 123456789)

      Reply
  47. If a input takes integer value from 1 to 100.
    applying equivalence partitioning to above problem we
    get following classes.
    1 to 100(valid)
    less than1(Invalid)
    greater than 100(invalid)

    as in equivalence partitioning there is no hard and fast rule to select input from partitions.

    so here from valid class i take input value (1 ,2 99 ,100)
    from invalid class lower than1 takes value(0,-1,50)
    from invalid class greater than 100 takes value(101,500)

    so by taking all this value together(1,2,99,100,0,-1,50,0,-1,50)
    i have covered values which lies on boundary.

    so why u need to apply BVA(Boundary Value Analysis).if we can get boundary values applying EP(Equivalence Partitioning). Can anyone explain…?

    Reply
  48. Hi Vijay

    I din’t know where to put this question because there is no category for that.

    Can you help me with ways of testing an artificial intelligence software/product

    thanks Tanvi

    Reply
  49. @Suhas, Qastation
    You can say that boundary value analysis test cases are the subset of Equivalence partitioning. As always you can select EP test cases similar to boundary value test cases. But BVA help to identify the upper and lower limit which may or may not be the part of EP tests.

    As I said, rather than just picking some random values as your EP test cases won’t do. Carerful partitioning and analysis of equivalence classes to pick the best test cases that will exercise maximum test coverage is what expected from equivalence partitiong.

    The example given is just to understand both concepts with a single example.

    Reply
  50. Assume that a Login page of yahoo mail accepts valid user ID and Password field. User ID field accepts minimum 10 characters and maximum 15 characters. Valid range 10-25,
    Invalid range 9 or less than 9 and Invalid range 26 or more than 26.
    Considering the above scenario you are required to implement boundary value analysis and write down the Test Cases for all partitioned values (Valid, Invalid and exact boundary).
    Invalid Partition Valid Partition Invalid Partition

    Test Cases:

    Reply
  51. I would like to add one formulae here for boundary value.
    n, n+1, n-1 one can use this formulae to calculate BV. It can be used for min and max value. As in the above example. 1-1000
    BV= 1,2,0 and 1000,1001,999

    Regards
    kishore

    Reply
  52. @Aparna ,

    Its a bit confusing question , they didn’t explicitly said about which partition to pick up for the test case design .

    Expalnation :
    10g 25p
    50g 35P
    75g 45p
    100g 55P

    Thing to worry here is if we are going to consider the valid partition of weight (in grams) then u r answer should be “c. 10,50,75,100” which covers all the four cases .

    If they are expecting to cover us with , invalid partions then we are in trouble :p we got no option in answers to cover those ( we may get additional 2 testcases for invalid partitions)

    Reply
  53. How to calculate Cyclomatic complexity for the below code using the formula M=E-N+P. where,
    E = the number of edges of the graph
    N = the number of nodes of the graph
    P = the number of connected components (exit nodes).

    Q. 23: The following code snippet reads through a file and determines whether the numbers contained are prime or not.

    1 Read (Val);
    2 While NOT End of File Do
    3 Prime := TRUE;
    4 For Holder := 2 TO Val DIV 2 Do
    5 if Val – (Val DIV Holder) * Holder= 0 Then
    6 Write (Holder, ‘ is a factor of ‘, Val);
    7 Prime := FALSE;
    8 Endif;
    9 Endfor;
    10 if Prime = TRUE Then
    11 Write (Val, ‘ is prime’);
    12 Endif;
    13 Read (Val);
    14 Endwhile;
    15 Write (‘End of run)

    Reply
  54. @Swapna

    All the above mentioned reports are of same.
    It depends upon the organisation requirements they will name it as they are.

    Reply
  55. Please let me know, how by using a testing technique, we will prepare Test Case for a Field accepting decimal numeric value e.g. “XXXXXXXX.XX”

    Reply
  56. Hi Friends ,

    Can anybody tell me For I.s.t.Q.B Certification and is it indispensible condition to have atleast 2 yr. exp. in mannual My mail is is :-
    Er4testing@yahoo.com

    Thanks In Advance

    Regards

    manoj upadhyay

    Reply
  57. This side is very helpful,i would like to know wich sort of technical questions should you ask during the interview for Test analyst

    Reply
  58. Apologies again 🙁

    different clauses are getting missed
    lessthan 1 will be invalid clause
    1 to 100 will be a valid clause and greatethan 100 will be a invalid caluse

    we take 1 value from each clause to check whether system behaves as supposed and not supposed to work .,

    Reply
  59. So, in the equivalence class test cases for numbers from 1 to 1000, since there are only three test cases, do we also perform only three tests, or do we still need to perform 1000 tests? If we are supposed to perform only three tests, then how can we be sure that every single number gives the same result? Maybe the software has a bug that gives a different result for 99.

    Reply
  60. always got lazy when coming to all this but thanx to u guys for opening my mind now i no um gonna show ISTQB wat i got…….thanx for the examples u used,it helped alot,was rili stuck..

    Reply
  61. Senthil

    Using Equivalence partition:
    you can divide input data into different class as valid and invalid class
    eg: 1-1000
    valid class-1-1000
    Invalid class-less than 1
    invalid class-more than 1000

    Using BV: now using the above class you write your test cases on boundaries. you can use above formulae posted in my comment to find the boundary values for diffrenet classes.

    Both the techniques are used simultaneously to design test case.
    First you divide your input data into valid and invalid class using Equivalence partioning and

    Second use boundary value to decide on the boundaries of each class.

    Regards
    kishore

    Reply
  62. Great Going Guys 🙂

    Just a suggestion , nothing Personal on this ..
    Testing Techniques are introduced to find the minimal number of test cases that can make full coverage (say optimal coverage) , but i see few Pals going out of the Testing Techniques like (EP , BVA)

    Like.,,
    to check for no of testcases for a text box accepting values between 1 -100 ,

    Note :
    the main focus on this is to check how system behaves values between 1 – 100 and the values on the boundaries (this shouldn’t be like what happens if we give charactes , spl chars and symbols , that will be carried in other form of testing like field validation (GUI Testing).

    As per EP :
    we get 3 clauses ,
    100(invalid clause). we take 1 value from each clause to check whether system behaves as supposed and not supposed to work .,

    To go for further coverage , we go for Boundary checks
    which assures our coverage .

    Reply
  63. @Kishor,
    I completly agree with what you say about BVA, now for the input set 10-100 how would you apply EP ?
    PS: My question is more to do with EP in the above example given by Vijay.

    Hey Vijay, could you throw some light on this as well? Some how am getting a feel that the EP what you have explained is either incomplete or you have not have not explained it with a very good example.

    Regards, Suhas M

    Reply
  64. for the above example its very simple n easy to get the ecp n bva..
    fr ecp we use the grouping its no possible to take every test case so..
    Ecp=1-3000-1000 i take min value and then aby midle value and then max value

    and Bva is for -negative approach is
    min-1=1-1=0
    max=1=1000+1=1001
    for +ve approach its same min=1 and max=1000

    Reply
  65. Suhas
    Nice thought!!
    As per my knowledge we can use BVA for both the classes.
    For eg: If I consider 5-50 a range then my
    valid class: 5-50
    invalid class: lets say (less than =4.99) and
    other invalid class would be (greater than=49.99 )
    Instead of writing test cases on all the values we can use BVA to minimise the no of test cases.

    Reply
  66. Some of my comments missing *

    As per EP :
    we get 3 clauses ,
    100(invalid clause). we take 1 value from each clause to check whether system behaves as supposed and not supposed to work .,

    To go for further coverage , we go for Boundary checks
    which assures our coverage .

    Reply
  67. GUYS and GALS,
    from what i see in the article BVA and EP just different method of testing. Use either one.

    Now can anyone help me in this scenario

    i have 2 textboxes or fields, and
    One can be entered with only alphabet
    another can be entered with only number

    so how can i use BVA on this scenario

    won’t there be too many scenario?
    such
    – leading space i.e. ” hello”
    – blank
    – symbol

    Can someone post all the scenario?

    Greatly appreciated..

    Reply
  68. My question is for the specified range 1-100 we test the values 0,1,2 and 99,100,101 for ECP but what if the range is 0-99999,how am i suppose to use BVA or ECP and is the logic n, n-1,n+1 still applicable?? Plz help me with this!!!

    Reply
  69. Hi,

    very useful article written in simple way so that any one can understand it easily.

    Thanks…..

    But I think very less topics are covered….Plz write more topics on testing….It will be very helpfull to us…..

    Reply
  70. I wrote the answers for the questions which i got.I dont know the correct answers.As per my knowledge I gave answers.Plz correct me with good explanation for wrong answers.
    1) Order numbers on a stock control system can range between 10000 and 99999 inclusive. Which of the following inputs might

    be a result of designing tests for only valid equivalence classes and valid boundaries:
    a) 1000, 5000, 99999
    b) 9999, 50000, 100000
    c) 10000, 50000, 99999
    d) 10000, 99999
    e) 9999, 10000, 50000, 99999, 10000 ANS-C

    2) Which of the following is NOT a black box technique:
    a) Equivalence partitioning
    b) State transition testing
    c) Syntax testing
    d) Boundary value analysis ANS-C

    3) Error guessing is best used
    a) As the first approach to deriving test cases
    b) After more formal techniques have been applied
    c) By inexperienced testers
    d) After the system has gone live
    e) Only by end users ANS-B

    4) Which is not true-The black box tester
    a. should be able to understand a functional specification or requirements document
    b. should be able to understand the source code.
    c. is highly motivated to find faults
    d. is creative to find the system’s weaknesses. ans-B

    5) A test design technique is
    a. a process for selecting test cases
    b. a process for determining expected outputs
    c. a way to measure the quality of software
    d. a way to measure in a test plan what has to be ans-Cdone

    6) Which of the following is true?
    a. Component testing should be black box, system testing should be white box.
    b. if u find a lot of bugs in testing, you should not be very confident about the quality of software
    c. the fewer bugs you find, the better your testing was
    d. the more tests you run, the more bugs you will find. ANS-D

    7) What is the important criterion in deciding what testing technique to use?
    a. how well you know a particular technique
    b. the objective of the test
    c. how appropriate the technique is for testing the application
    d. whether there is a tool to support the technique ANS-C

    8) Which of the following is a black box design technique?
    a. statement testing
    b. equivalence partitioning
    c. error- guessing
    d. usability testing ANS-B

    9) A program validates a numeric field as follows:
    values less than 10 are rejected, values between 10 and 21 are accepted, values greater than or equal to 22 are rejected
    Which of the following input values cover all of the equivalence partitions?
    a. 10, 11, 21
    b. 3, 20, 21
    c. 3, 10, 22
    d. 10, 21, 22 ANS-B

    10) Using the same specifications as question 9, which of the following covers the MOST boundary values?
    a. 9,10,11,22
    b. 9,10,21,22
    c. 10,11,21,22
    d. 10,11,20,21 ANS-B

    11) Error guessing:
    a) supplements formal test design techniques.
    b) can only be used in component, integration and system testing.
    c) is only performed in user acceptance testing.
    d) is not repeatable and should not be used. ANS-A

    12) Which of the following is NOT a white box technique?
    a) Statement testing
    b) Path testing
    c) Data flow testing
    d) State transition testing ANS-D

    13) Data flow analysis studies:
    a) possible communications bottlenecks in a program.
    b) the rate of change of data values as a program executes.
    c) the use of data on paths through the code.
    d) the intrinsic complexity of the code. ANS-C

    14) In a system designed to work out the tax to be paid:
    An employee has £4000 of salary tax free. The next £1500 is taxed at 10%
    The next £28000 is taxed at 22%
    Any further amount is taxed at 40%
    Which of these groups of numbers would fall into the same equivalence class?
    a) £4800; £14000; £28000
    b) £5200; £5500; £28000
    c) £28001; £32000; £35000
    d) £5800; £28000; £32000 ANS-D

    15) Test cases are designed during:
    a) test recording.
    b) test planning.
    c) test configuration.
    d) test specification. ANS-D

    16) An input field takes the year of birth between 1900 and 2004
    The boundary values for testing this field are
    a. 0,1900,2004,2005
    b. 1900, 2004
    c. 1899,1900,2004,2005
    d. 1899, 1900, 1901,2003,2004,2005 ANS-C

    17) Boundary value testing
    a. Is the same as equivalence partitioning tests?
    b. Test boundary conditions on, below and above the edges of input and output equivalence classes
    c. Tests combinations of input circumstances
    d. Is used in white box testing strategy ANS-B

    18) When testing a grade calculation system, a tester determines that all scores from 90 to 100 will yield a grade of A, but

    scores below 90 will not. This analysis is known as:
    a) Equivalence partitioning
    b) Boundary value analysis
    c) Decision table
    d) Hybrid analysis ANS-B

    19) Which technique can be used to achieve input and output coverage? It can be applied to human input, input via interfaces

    to a system, or interface parameters in integration testing.
    a) Error Guessing
    b) Boundary Value Analysis
    c) Decision Table testing
    d) Equivalence partitioning ANS-A

    20) Features to be tested, approach, item pass/fail criteria and test deliverables should be specified in which document?
    a) Test case specification
    b) Test procedure specification
    c) Test plan
    d) Test design specification ANS-A

    21) Which specification-based testing techniques are most closely related to each other?
    a) Decision tables and state transition testing
    b) Equivalence partitioning and state transition testing
    c) Decision tables and boundary value analysis
    d) Equivalence partitioning and boundary value ANS-D
    analysis

    22) assume postal rates for ‘light letters’ are:
    $0.25 up to 10 grams
    $0.35 up to 50 grams
    $0.45 up to 75 grams
    $0.55 up to 100 grams
    Which test inputs (in grams) would be selected using boundary value analysis?
    a) 0, 9, 19, 49, 50, 74, 75, 99, 100
    b) 10, 50, 75, 100, 250, 1000
    c) 0, 1, 10, 11, 50, 51, 75, 76, 100, 101 ANS-C
    d) 25, 26, 35, 36, 45, 46, 55, 56

    23) If the temperature falls below 18 degrees, the heating system is switched on. When the temperature reaches 21 degrees,

    the heating system is switched off. What is the minimum set of test input values to cover all valid equivalence partitions?
    a) 15, 19 and 25 degrees
    b) 17, 18, 20 and 21 degrees
    c) 18, 20 and 22 degrees
    d) 16 and 26 degrees ANS-A

    24) What is a test condition?
    a) An input, expected outcome, precondition and post condition
    b) The steps to be taken to get the system to a given point
    c) Something that can be tested
    d) A specific state of the software, ex: before a test can be run ANS-D

    25) What is a key characteristic of specification-based testing techniques?
    a) Tests are derived from information about how the software is constructed
    b) Tests are derived from models (formal or informal) that specify the problem to be solved by the software or its components
    c) Tests are derived based on the skills and experience of the tester
    d) Tests are derived from the extent of the coverage of structural elements of the system or components ANS-A

    26) Why are both specification-based and structure-based testing techniques useful?
    a) They find different types of defect.
    b) using more techniques is always better
    c) both find the same types of defect.
    d) Because specifications tend to be unstructured ANS-D

    27) Find the Equivalence class for the following test case
    Enter a number to test the validity of being accepting the numbers between 1 and
    99
    a) All numbers 99
    c) Number = 0
    d) All numbers between 1 and 99 ANS-D

    28) What is the relationship between equivalence partitioning and boundary
    value analysis techniques?
    a) Structural testing
    b) Opaque testing
    c) Compatibility testing ANS-B
    d) All of the above

    29) Suggest an alternative for requirement traceability matrix
    a) Test Coverage matrix
    b) Average defect aging
    c) Test Effectiveness
    d) Error discovery rate ANS-A

    30) The following defines the statement of what the tester is expected to accomplish or validate during testing activity
    a) Test scope
    b) Test objective
    c) Test environment
    d) None of the above ANS-B

    31) One technique of Black Box testing is Equivalence Partitioning. In a program
    statement that accepts only one choice from among 10 possible choices,
    numbered 1 through 10, the middle partition would be from _____ to _____
    a) 4 to 6
    b) 0 to 10
    c) 1 to 10
    d) None of the above ANS-A

    32) Test design mainly emphasizes all the following except
    a) Data planning
    b) Test procedures planning
    c) Mapping the requirements and test cases
    d) Data synchronization ANS-D

    33) Deliverables of test design phase include all the following except
    a) Test data
    b) Test data plan
    c) Test summary report
    d) Test procedure plan ANS-C

    34) Test data planning essentially includes
    a) Network
    b) Operational Model
    c) Boundary value analysis
    d) Test Procedure Planning ANS-D

    35) Test coverage analysis is the process of
    a) Creating additional test cases to increase coverage
    b) Finding areas of program exercised by the test cases
    c) Determining a quantitative measure of code coverage, which is a
    direct measure of quality.
    d) All of the above. ANS-D

    36) Branch Coverage
    a) another name for decision coverage
    b) another name for all-edges coverage
    c) another name for basic path coverage
    d) all the above ANS-A

    37) The following example is a
    if (condition1 && (condition2 || function1()))
    statement1;
    else
    statement2; (Testing concepts)
    a) Decision coverage
    b) Condition coverage
    c) Statement coverage
    d) Path Coverage ANS-D

    38) Test cases need to be written for
    a) invalid and unexpected conditions
    b) valid and expected conditions
    c) both a and b
    d) none of these ANS-C

    39) Path coverage includes
    a) statement coverage
    b) condition coverage
    c) decision coverage
    d) none of these ANS-A

    40) The benefits of glass box testing are
    a) Focused Testing, Testing coverage, control flow
    b) Data integrity, Internal boundaries, algorithm specific testing
    c) Both a and b
    d) Either a or b ANS-C

    41) Find the invalid equivalence class for the following test case
    Draw a line up to the length of 4 inches
    a) Line with 1 dot-width
    b) Curve
    c) line with 4 inches
    d) line with 1 inch. ANS-B

    42) Error seeding
    a) Evaluates the thoroughness with which a computer program is tested by purposely inserting errors into a supposedly correct

    program.
    b) Errors inserted by the developers intentionally to make the system
    malfunctioning.
    c) for identifying existing errors
    d) Both a and b ANS-A

    43) Which of the following best describes the difference between clear
    box and opaque box?
    1. Clear box is structural testing, opaque box is Ad-hoc testing
    2. Clear box is done by tester, and opaque box is done by developer
    3. Opaque box is functional testing, clear box is exploratory testing
    a) 1
    b) 1 and 3
    c) 2
    d) 3 ANS-D

    44) What is the concept of introducing a small change to the program and having the effects of that change show up in some

    test?
    a) Desk checking
    b) Debugging a program
    c) A mutation error
    d) Introducing mutation ANS-C

    45) How many test cases are necessary to cover all the possible sequences of statements (paths) for the following program

    fragment? Assume that the two conditions are independent of each other : – …………
    if (Condition 1)
    then statement 1
    else statement 2
    fi
    if (Condition 2)
    then statement 3
    fi
    …………
    a. 1 test case
    b. 3 Test Cases
    c. 4 Test Cases
    d. Not achievable ANS-B

    46) Given the following code, which is true about the minimum number of test cases required for full statement and branch

    coverage:
    Read P
    Read Q
    IF P+Q > 100 THEN
    Print “Large”
    ENDIF
    If P > 50 THEN
    Print “P Large”
    ENDIF
    a) 1 test for statement coverage, 3 for branch coverage
    b) 1 test for statement coverage, 2 for branch coverage
    c) 1 test for statement coverage, 1 for branch coverage
    d) 2 tests for statement coverage, 3 for branch coverage
    e) 2 tests for statement coverage, 2 for branch coverage ANS-E

    47) Given the following:
    Switch PC on
    Start “outlook”
    IF outlook appears THEN
    Send an email
    Close outlook
    a) 1 test for statement coverage, 1 for branch coverage
    b) 1 test for statement coverage, 2 for branch coverage
    c) 1 test for statement coverage. 3 for branch coverage
    d) 2 tests for statement coverage, 2 for branch coverage
    e) 2 tests for statement coverage, 3 for branch coverage ANS-B

    48) If a candidate is given an exam of 40 questions, should get 25 marks to pass (61%) and should get 80% for distinction,

    what is equivalence class?
    A. 23, 24, 25
    B. 0, 12, 25
    C. 30, 36, 39
    D. 32, 37, 40 ANS-C

    49) Consider the following statements:
    i. 100% statement coverage guarantees 100% branch coverage.
    ii. 100% branch coverage guarantees 100% statement coverage.
    iii. 100% branch coverage guarantees 100% decision coverage.
    iv. 100% decision coverage guarantees 100% branch coverage.
    v. 100% statement coverage guarantees 100% decision coverage.
    a) ii is True; i, iii, iv & v are False
    b) i & v are True; ii, iii & iv are False
    c) ii & iii are True; i, iv & v are False
    d) ii, iii & iv are True; i & v are False ANS-C

    50) Which statement about expected outcomes is FALSE?
    a) Expected outcomes are defined by the software’s behavior
    b) Expected outcomes are derived from a specification, not from the code
    c) Expected outcomes should be predicted before a test is run
    d) Expected outcomes may include timing constraints such as response times ANS-A

    51) Which of the following is not a white box testing?
    a) Random testing
    b) Data Flow testing
    c) Statement testing
    d) Syntax testing ANS-D

    52) If the pseudo code below were a programming language, how many tests are required to achieve 100% statement coverage?
    1. If x=3 then
    2. Display_messageX;
    3. If y=2 then
    4. Display_messageY;
    5. Else
    6. Display_messageZ;
    a. 1
    b. 2
    c. 3
    d. 4 ANS-B

    53) Using the same code example as question 17, how many tests are required to achieve 100% branch/decision coverage?
    a. 1
    b. 2
    c. 3 ANS-B
    d. 4

    54) Which of the following technique is NOT a black box technique?
    a) Equivalence partitioning
    b) State transition testing
    c) LCSAJ
    d) Syntax testing ANS-D

    55) Given the following code, which is true?
    IF A>B THEN
    C = A – B
    ELSE
    C = A + B
    ENDIF
    Read D
    IF C = D THEN ANS-B
    Print “Error”
    ENDIF
    a) 1 test for statement coverage, 1 for branch coverage
    b) 2 tests for statement coverage, 2 for branch coverage
    c) 2 tests for statement coverage, 3 for branch coverage
    d) 3 tests for statement coverage, 3 for branch coverage
    e) 3 tests for statement coverage, 2 for branch coverage

    56) Consider the following:
    Pick up and read the news paper
    Look at what is on television
    If there is a program that you are interested in watching then switch the television on and watch the program
    Otherwise
    Continue reading the news paper
    If there a crossword in the news paper then try and complete the crossword
    a) SC = 1 and DC = 3
    b) SC = 1 and DC = 2
    c) SC = 2 and DC = 2
    d) SC = 2 and DC = 3 ANS-C

    57) The specification: an integer field shall contain values from and including 1 to and including 12 (number of the month)
    Which equivalence class partitioning is correct?
    a) Less than 1, 1 through 12, larger than 12
    b) Less than 1, 1 through 11, larger than 12
    c) Less than 0, 1 through 12, larger than 12 ANS-A
    d) Less than 1, 1 through 11, and above

    58) Analyze the following highly simplified procedure:
    Ask: “What type of ticket do you require, single or return?”
    IF the customer wants ‘return’
    Ask: “What rate, Standard or Cheap-day?”
    IF the customer replies ‘Cheap-day’
    Say: “That will be £11:20”
    ELSE
    Say: “That will be £19:50”
    ENDIF
    ELSE
    Say: “That will be £9:75”
    ENDIF

    Now decide the minimum number of tests that are needed to ensure that all the questions have been asked, all combinations

    have occurred and all replies given.
    a) 3
    b) 4
    c) 5
    d) 6 ANS-A

    Thanks in advance…..

    Reply
  71. Hi

    It’s good sharing your knowledge with others about equivalence and boundary value analysis, but I am having one doubt, you have taken the example for only single instance what will happen if there are multiple instances? Its take time and somewhat difficult to do that. Recently I have seen a tool called “TestersDesk.com” Which is useful for both TestDesign and TestData Generation Toolkit in that Boundary value analysis tool is there with the help of tool we can reduce our work and can do for multiple instances at the same time

    Reply
  72. Hi All,

    Could anyone please give me a justifying answer for wat suhas has askd on the efficiency of Equivalence partitioning over BVA? Because as he said, BVA is going to cover all of the scenarios including what we are trying to cover in EP. Please let me know with a clear example.

    Reply
  73. It is believed that EP is a good technique to reduce the number of test cases to a bare minimum. Though EP is related to efficiency of test case design, I think that we should be aware that using EP could prevent the discovery of defects related to particular data value(s) in a range. Consider a date input text box (with a calendar control) that accepts dates between 1 Jan 1970 and today. We have three classes (also called partitions) here
    1) = 7 Nov 2008.
    By just selecting one test data value from each class might not be able to exercise the application with other interesting values e.g. 29 Feb 2008 or any particular value not handled correctly by the application.

    Reply
  74. Good writing Vijay !!!
    But, I have a doubt here. When you apply the equivalence class partitioning for the input in the above example you have had 3 partitions – within the limit, above upper limit and below lower limit. Now my question is – is this equivalence class partitioning limited to this, if thats the case then i dont see there is much difference in EP and BVA. If you apply BVA, EP is autometically applied.
    Hope I am not very incorrect in my understanding, your views on this please.

    Regards, Suhas M

    Reply
  75. hi,

    In order to test for a text box that excepts amount in the range 1 to 100 we need to test for the following condition:

    1. First see if the text box accepts alphabets
    2. second whether it accepts special characters
    3. Then enter “2e4” in some cases it allows this and converts to exponent which should not be allowed
    4. then go for BVA
    i.e enter 0,1,2 and 99,100,101

    Dont u think this is the approach that needs to be followed.

    Reply
  76. Hi Rehana ,

    +1 and -1 is the boundary value for a pure integer .
    In your case if 1000 ,
    you need to test with
    1. 1000 is the positive or valid data , data should be accepted
    2. 999,1001 are the invalid values , likely negative testing where values shoulnt be accepted.

    Eg : if x + y = 1000 and its already given y = 0
    then x should be 1000 is the positive testing

    for the values 999,1001 it should get failed.

    Reply
  77. When it comes API testing, I do not think this theories really helps always. You will be working with Objects rather than numbers like 1-100. And as an API tester you have the full freedom to go and see the dev code that consumes these input parameters and design your test cases accordingly.

    Reply
  78. In BVA, we are taking the values from the edges of the classes and write the test cases. But in EP, We are taking the value from each classes and write the test cases.

    Reply
  79. Reply to Nivi’s query:

    Theoretically, we still apply the same logic. But, practically, we have to see what can be tested and what cannot be tested and adapt our test cases accordingly.
    For example, there may be a field that says that application may allow upto 9999 accounts to be created. It is practically impossible to create so many accounts and test the limit. In such cases, these techniques cannot be applied.

    Reply
  80. Hi ,
    Thanks for updating me.

    Can u please hepl me about the certification in Testing as i planning to write.

    First i need what is the Use of this certifications

    Reply
  81. Hi,
    I want to know whether I have written correct ECP and BVA values for the condition if(a>b) and both are of type INT32 .
    a>b Valid class
    a==b Invalid class
    a<b Invalid class

    and values are like b,b+1,b-1,minium and maximum and in the ECP can we change the both variable value or we should keep one as a constant to have good ECP
    Please help me .

    Thanks

    Reply
  82. Sombody asked about Tracebility Matrix in this question answer thread.

    Anser to Tracebility matrix : Tacebility matrix a document which track the completeness. e.g. Requirement Tracebility Matrics(RTM). In RTM we note down all the requirements id which are there in SRS. As and when we start writing test cases againist requirements, we keep updating those test cases id in RTM against respective requirements.

    Hope this short description will help you to understand about Tracebility matrics. gook luck , happy testing.

    Reply
  83. Cld anybody pls help me in answering the following question – how many test cases will be generated for three check boxes and one button

    Reply
  84. Excellent brainstorming session Suhas
    Well put it simple
    Use ECP to divide input domain into equivalent class as you pointed out in your example and then use BVA to decide test cases on extreme edges.

    Reply
  85. Respected seniors, Vijay plz. answer me.

    How to answer – “what METRICS do you use? How many types of metrics are there?” It’s a most imp question in interviews. As far as i know, different metrics are–Defect Density, Defect Leakage, Traceability Matrix, Bug Trend Analysis(means comparing no of bugs in different versions). Types of Metrics are Process, Product, Project. “Do CMM, ISO 9000 come under Metrics?”. I am not concluding the above information. My attempt is to make clear that on what topic seniors have to give their kind and valuable suggestions.

    Plz. respond with full details.

    Yours faithfully………Sirisha

    Reply
  86. Dear,
    Any one tell me the correct formula for boundary value analysis

    BV = LV-1, LV, LV+1, UV-1, UV, UV+1.
    BV = LV-1, LV+1, UV-1,UV+1.

    Reply
  87. Hi Friends ,

    Could anyone be kind enough to send me questions or dumps with answers for ISTQB Fundamental Certification . I am appearing For ISTQB certification exam next week.

    kskadian@yahoo.com

    Thanking you all in anticipation.
    Kavita

    Reply
    • @Kavita and all

      If you want free ISTQB foundation level exam material you can get it from below page by registering with your email.

      You will get some sample papers over the period of couple of weeks through this option:
      Softwaretestinghelp.com/istqb-free-updates/

      If you are interested in premium sure-pass study guide to easily pass and score high in this exam please check this study guide:
      Softwaretestinghelp.org/istqb-certification-complete-study-package/

      Reply
  88. In Boundary value analysis there are three basic steps to perform this validation:

    1) First enter extreme valid values both from lower and upper limit

    2) Then decrement by 1 from both upper limit and lower limit and test validation on that data

    Test Data = Lower limit -1
    Test Data = Upper Limit -1

    3) Then increment by 1 from both upper limit and lower limit and test validation on that data

    Test Data = Lower limit +1
    Test Data = Upper limit +1

    Reply
  89. How can we made equivalence partioning for a field where date is the input like 1 Jan 1976 to 5 Nvoember 2009?
    What would be the Equivalence classes…consder the leap years also

    Reply
  90. Value Range: 1-100

    What is Valid Equivalence Partition and Boundary Value of 1-100 range?

    What is invalid Equivalence Partition and Boundary Value of 1-100 range?

    Please Explain me..

    Reply
  91. Srinivasa Rao,
    for 3 check boxes and one button – 8 test cases can be written. BTW, button was only to confuse but all 8 test cases are the possible selection of 3 check boxes.

    Hope this helps. But I don’t understand why you were asking that question here in the comment section of BVA article.

    Reply
  92. Hello Everybody,
    I have one doubt Regarding boundary value analysis and Equivalent class partitioning.
    Let I have one Test cases for input box accepting numbers between 1 and 1000.
    So as we know through boundary value analysis and Equivalent class partitioning we can check min value i.e. 0,1,2 and max value i.e 999,1000,1001.
    But user may give some random number like 55,555555,45566,289 and So on.
    So,My doubt is how we can check that number is valid or not ?

    Reply
  93. hi raj,

    Installation testing should be done in the collabartion with the configuration engineer.
    installation is the process which first time client/user is going to interacted with our product/appl.
    installation testing is done to ensure that the client/user do not feel trouble while installing the software.
    thank you

    Reply
  94. given the following specification.
    which of the following value for age are in the same EP
    if uor age less than 18 then too young for insurance
    if 18 to 30 then 20% discount
    more then 30 ,not eligible for discount

    17,18,19
    29,30,31
    18,29,30
    17,29,31

    Reply
  95. How to write BVA for Date range .

    Suppose a field take data between following date range then how to write BVA

    Date: 1 Jan 2014 to 31 March 2014

    Please help me.

    Reply

Leave a Comment