Thursday, December 1, 2011

Testing Interview Questions And Answers

These are the answers to the "software testing" questions:-

1. Difference between black box and white box testing.
Black box Testing:

Black box testing is the testing where the tester is unaware of the code and structures inside the application that is tested. The tester knows only the valid inputs supplied and the expected outputs corresponding to those inputs. If the expected result is not obtained, the tester files a bug.

White Box Testing:

White Box testing is one where the tester is aware of the internal code flow and structures and he tries to test if all the modules are hit properly when different inputs are supplied. In most cases developers perform the white box testing as they are aware of the modules they have created.

2. Who does white box testing(Developers or testers)?
Black box testing is performed by testers
White box testing is mostly performed by developers

3. Why the name 'black box' and 'white box' testing?

If we look at the application as a single box, in the case of black box testing, the tester is unaware of the code structures inside and hence the application looks like a black box to him with just the input going into it and the output that is expected to come out of it.

In the case of a white box testing, the tester (in fact the developer) knows the application in and out including the code structures. So the applications looks like a white transparent box to him, where he can see the modules in it and test if all the modules are hit properly and the code is optimized.

4. Is unit testing white box or black box?
Testing an individual module of an application is called unit testing.
Developers perform unit tests and therefore it comes under white box testing.
In white box testing the basic path coverage, loops and functions written in the code are tested
On the other hand, black box testing tests the functionality of an application

5. Difference between regression and re-testing?

Regression Testing
When we perform testing after making changes to the current build it is called regression testing. In other words regression testing is performed time and again on different builds to see if the code changes in the subsequent builds affect the output/functionality.

Retesting

On the other hand, when we perform testing time and again on the same build it is called retesting. Sometimes an application might behave in an inconsistent way giving different outputs when we retest. To capture such bugs we do retesting.

6. Why is testing essential for a project? What is the significance of testing?
Testing is an integral part of a project as it improves the quality of an application that is created. Any basic functionality that is left out during the development phase can be captured during the testing phase. A developer over looks certain issues as he does not want his code to break. But a tester's main aim is to break the application when a valid input is given, which means the application has a bug and needs to be fixed.

7. Name a bug that you had raised in your project that was appreciated?
Think of something that brought you several appreciation mails from clients. Something that the developer had really missed and if delivered as is, could have caused a big blow.


8. Difference between Verification and Validation testing is a very common question in any testing interview. I had faced this question time and again and was really very much interested to shoot it on the bull's eye. That is when I found these explanations from a site. I made a backup and it is available here

http://networkinterviewquestionsandanswers.blogspot.in/2012/08/excellent-explanation-for-difference.html

1 comment:

  1. Excellent blog admin, really helpful to me. Keep up the good work and share more interview questions.
    Mobile Testing Training | Mobile Application Training in Chennai

    ReplyDelete