Tuesday 5 November 2013

Testing Methodologies


Now we have to go in-depth to software testing concepts

How to test the application?

Either manually or by using any third party automation tool (like QTP, Selenium, Load runner…)
Manual testing: By writing test cases manually validating the functionality of the application is called manual testing.
Automation Testing: Using third party automation tool validating the application functionality.

What are the inputs of testing?

Test data: The data which we pass to the application while validating the application.
 Instead of using static testing approach Test engineer use dynamic testing approach while validating the application functionality.

How to derive test Case?

The best possible test cases can be derived using different testing techniques. Out of them 3 techniques are important. They are
1)      White Box Testing (WBT):
Using programming knowledge validating the source code of the application is called white box testing (WBT)/Glass Box testing/Plain Box Testing/Open Box Testing.
In general at developer’s site, the development team use this WBT technique to derive test cases.
While testing the application the development team checks for the code coverage instead of covering the user requirements. They will check for
a)      Statements coverage: They will check whether all the statements in code are covered or not while execution.
b)      Path/ Branch coverage: They will check the loops conditions… are executed correctly or not.

2)        Black Box Testing (BBT):
Without having the programming knowledge on source code, the separate testing team validates the application only with the help of BRS and FRS documents and the released build (.exe file) with end- user’s perspective is known as Black Box Testing (BBT)/Closed Box Testing.
They use the following techniques to

a.       Boundary Value Analysis (BVA):  This technique is used to validate the input condition in terms of size/range. Using this technique total 3 possible conditions are derived at each boundary level,
Example: (Expression)
 4<=x<=6 (this expression is for validation)
So for this boundary values are 4, 6
Now,
Min                        4              valid                       Max                        6             Valid
Min -1                   4-1=3     valid                       Max-1                   6-1=5     Valid
Min+1                   4+1=5    valid                       Max+1                  6+1=7    Invalid
The test data derived using this technique is passed to the application while validating the certain expression.
Note: In general there is a high possibility of errors in and around the boundary conditions so we can identify the best possible test data.
Disadvantages: Using this method it is not possible to validate the data type. And that too only boundary conditions are validated.

b.      Equivalence Class Partition (ECP): This technique is used to validate the input condition in terms of data type. Using this technique entire test data is derived at first and later it was divided into valid and invalid test data sets.
At the time of execution, sample data is taken from each class to validate the input condition.
Example:
Prepare test data using ECP to validate the withdraw condition for ATM which allows from 100/- to 20,000/- whereas amount should be multiples of 100/-

Valid                                                                      Invalid
===========================|==================================
100<=Amount<=20,000                              Amount<100/-
                        Only multiples of 100/-                                 Amount>20,000
                                                                                            Amount with decimal points
                                                                                            Amount which is not multiples of 100/-

Note: In general we derive test data with the combination of BVA and ECP techniques.
c.       Error Guessing (EG): This technique is used only by the experienced person , with the help of their previous experience of functional testing they will guess the related data for the current situation and performs testing.

3)      Grey Box Testing (GBT): Having the programming knowledge on source code testing the application functionality from user’s perspective using BRS and FRS documents is known as grey box testing.
s     
      Interview Questions_037: Give me some automation tools name?
Interview Questions_038: If we are performing the validation manually then why should we go for Automation tools for testing?
Interview Questions_039: We can make our task fast and easy with automation tool then why should we follow this manual testing??
Interview Questions_040: What is the purpose and need of testing methodologies>
Interview Questions_041: Difference between WBT and BBT?
Interview Questions_042: Which test cases are derived first?
Interview Questions_043: Which Test cases are executed first?
Interview Questions_044: According to you which Technique is better to derive the best possible test data?
Interview Questions_045: Difference between static testing and dynamic testing approaches?
Interview Questions_046: Difference between test data and test case?
Interview Questions_047: If the development team performs testing, which technique they will prefer and why?
Interview Questions_048: Under BBT, how many sub techniques are there?
Interview Questions_049:  Explain BVA and ECP techniques?
Interview Questions_050: Difference between BVA and ECP techniques?
Interview Questions_051: Under BBT, which techniques you have used till now while testing the projects at your institute (If you put any projects on testing then there is a chance for this question)? [In technical round at NCR, HR asked me this question]


No comments:

Post a Comment