Testing interview questions for experienced - contributed by
What is Requirement
What is difference
between Pilot and Beta testing?
Describe how to
perform Risk analysis during software testing?
What is Silk Test?
What is difference
between Master Test Plan and Test Plan.
How to deal with not
What is the
difference between coupling and cohesion?
What is the role of
QA in a project development?
When do you choose
automated testing over manual testing?
What are the key
challenges of software testing?
What is difference
between QA, QC and Software Testing?
What is concurrent
user hits in load testing?
What is difference
between Front End Testing and Back End testing?
What is Automated
What is Testware?
What is Exhaustive
What is Gray Box
What is Integration
What is Scalability
What is Software
What is Storage
What is Stress
What is Test
Can you define test
driver and test stub?
What is good design?
What makes a good QA
or Test manager?
What is Manual
scripted Testing and Manual Support testing?
What is Fuzz
testing, backward compatibility testing and assertion testing?
How does a client or
server environment affect testing?
What are the
categories of defects?
Q1. What is Requirement Traceability Matrix?
The Requirements Traceability Matrix (RTM) is a tool to make sure that project
requirement remain same throughout the whole development process. RTM is used
in the development process because of following reasons:
• To determine whether the developed project is meet the requirements of the
• To determine all the requirements given by the user
• To make sure the application requirement can be fulfilled in the verification
Q2. What is difference between Pilot and Beta testing?
The differences between these two are listed below:
• A beta test when the product is about to release to the end user whereas pilot
testing take place in the earlier phase of the development cycle.
• In beta testing application is given to a few user to make sure that
application meet the user requirement and does not contain any showstopper
whereas in case of pilot testing team member give their feedback to improve the
quality of the application.
Q3. Describe how to perform Risk analysis during software testing?
Risk analysis is the process of identifying risk in the application and
prioritizing them to test. Following are some of the risks:
1. New Hardware.
2. New Technology.
3. New Automation Tool.
4. Sequence of code delivery.
5. Availability of application test resources.
We prioritize them into three categories these are:
• High magnitude: Impact of the bug on the other functionality of the
• Medium: it can be tolerable in the application but not desirable.
• Low: it can be tolerable. This type of risk has no impact on the company
Q4. What is Silk Test?
Silk Test is a tool developed for performing the regression and functionality
testing of the application. Silk Test a tool is used when we are testing the
applications which are based on Window, Java, web or traditional client/server.
Silk Test help in preparing the test plan and management of those test plans,
to provide the direct accessing of the database and validation of the field.
Q5. What is difference between Master Test Plan and Test Plan.
The differences between Master Plan and Test Plan are given below:
• Master Test Plan contains all the testing and risk involved area of the
application where as Test case document contains test cases.
• Master Test plan contain all the details of each and every individual tests
to be run during the overall development of application whereas test plan
describe the scope, approach, resources and schedule of performing test.
• Master Test plan contain the description of every tests that is going to be
performed on the application where as test plan only contain the description of
few test cases. during the testing cycle like Unit test, System test, beta test
• Master Test Plan is created for all large projects but when it is created for
the small project then we called it as test plan.
Q6. How to deal with not reproducible bug?
Ans. A bug cannot be reproduced for following reasons:
1. Low memory.
2. Addressing to non available memory location.
3. Things happening in a particular sequence.
Tester can do following things to deal with not reproducible bug:
• Includes steps that are close to the error statement.
• Evaluate the test environment.
• Examine and evaluate test execution results.
• Resources & Time Constraints must be kept in point.
Q7.What is the difference between coupling and cohesion?
The difference between coupling and cohesion is discussed below:
• Cohesion is the degree which is measure dependency of the software component
that combines related functionality into a single unit whereas coupling means
that binding the related functionality into different unit.
• Cohesion deals with the functionality that related different process within
the single module where as coupling deals with how much one module is dependent
on the other modules within the application.
• It is good to increase the cohesion between the software whereas increasing
coupling is avoided.
Q8. What is the role of QA in a project development?
The role of Quality Assurance is discussed below:
• QA team is responsible for monitoring the process to be carried out for
• Responsibilities of QA team are planning testing execution process.
• QA Lead creates the time tables and agrees on a Quality Assurance plan for
• QA team communicated QA process to the team members.
• QA team ensures traceability of test cases to requirements.
Q9. When do you choose automated testing over manual testing?
This choice between automated testing over manual testing can be based upon
1. Frequency of use of test case
2. Time Comparison (automated script run much faster than manual execution.)
3. Reusability of Automation Script
4. Adaptability of test case for automation.
5. Exploitation of automation tool
Q10. What are the key challenges of software testing?
Following are some challenges of software testing:
1. Application should be stable enough to be tested.
2. Testing always under time constraint
3. Understanding the requirements.
4. Domain knowledge and business user perspective understanding.
5. Which tests to execute first?
6. Testing the Complete Application.
7. Regression testing.
8. Lack of skilled testers.
9. Changing requirements.
10. Lack of resources, tools and training
Q11. What is difference between QA, QC and Software Testing?
Quality Assurance (QA): QA refers to the planned and systematic way of
monitoring the quality of process which is followed to produce a quality
product. QA tracks the outcomes and adjusts the process to meet the
Quality Control (QC): Concern with the quality of the product. QC finds the
defects and suggests improvements. The process set by QA is implemented by QC.
The QC is the responsibility of the tester.
Software Testing: is the process of ensuring that product which is developed by
the developer meets the user requirement. The motive to perform testing is to
find the bugs and make sure that they get fixed.
Q12. What is concurrent user hits in load testing?
When the multiple users, without any time difference, hits on a same event of
the application under the load test is called a concurrent user hit. The
concurrency point is added so that multiple Virtual User can work on a single
event of the application. By adding concurrency point, the virtual users will
wait for the other Virtual users which are running the scripts, if they reach
early. When all the users reached to the concurrency point, only then they
start hitting the requests.
Q13. What is difference between Front End Testing and Back End
The differences between front and back end testing are:
• Front End Testing is performed on the Graphical User Interface (GUI).whereas
Back End Testing involves databases testing.
• Front end consist of web site look where user can interact whereas in case of
back end it is the database which is required to store the data.
• When ender user enters data in GUI of the front end application, then this
entered data is stored in the database. To save this data into the database we
write SQL queries.
Q14. What is Automated Testing?
The process of performing testing automatically which reduces the human
intervention this is automation testing. The automation testing is carried out
with the help of the some automation tool like QTP, Selenium, WinRunner etc. In
automation testing we use a tool that runs the test script to test the
application; this test script can be generated manually or automatically. When
testing is completed then tools automatically generate the test report and
Q15. What is Testware?
The testware is:
• The subset of software which helps in performing the testing of application.
• Testware are required to plan, design, and execute tests. It contains
documents, scripts, inputs, expected results, set-up and additional software or
utilities used in testing.
• Testware is term given to combination of all utilities and application
software that required for testing a software package.
Testware is special because it has:
1. Different purpose
2. Different metrics for quality and
3. Different users
Q16.What is Exhaustive Testing?
Exhaustive Testing, as the name suggests is very exhaustive. Exhaustive testing
means to test every component in the application with every possible number of
inputs. According to Principles of testing Exhaustive Testing is Impossible
because exhaustive testing requires more time and effort to test the
application for all possible number of inputs. This may lead to high cost and
delay in the release of the application.
Q17. What is Gray Box Testing?
Grey box testing is the hybrid of black box and white box testing. In gray box
testing, test engineer has the knowledge of coding section of the component and
designs test cases or test data based on system knowledge. In this tester has
knowledge of code, but this is less than the knowledge of white box testing.
Based on this knowledge the test cases are designed and the software
application under test treats as a black box & tester test the application
Q18. What is Integration Testing?
Integration testing is black box testing. Integration testing focuses on the
interfaces between units, to ensure that units work together to complete a
specify task. The purpose of integration testing is to confirm that different
components of the application interact with each other. Test cases are
developed with the purpose of exercising the interfaces between the components.
Integration testing is considered complete, when actual results and expected
results are same. Integration testing is done after unit testing. There are
mainly three approaches to do integration testing:
• Top-down Approach tests the components by integrating from top to bottom.
• Bottom-up approach It takes place from the bottom of the control flow to the
higher level components
• Big bang approach In this are different module are joined together to form a
complete system and then testing is performed on it.
Q19. What is Scalability Testing?
Scalability testing is testing performed in order to enhanced and improve the
functional and performance capabilities of the application. So that,
application can meets requirements of the end users. The scalability
measurements is done by doing the evaluating the application performance in
load and stress conditions. Now depending upon this evaluation we improve and
enhanced the capabilities of the application.
Q20. What is Software Requirements Specification?
• A software requirements specification is a document which acts as a contract
between the customer and the supplier.
• This SRS contain all the requirement of the end user regarding that
application. SRS can be used as a communication medium between the customer and
• The developer and tester prepare and examine the application based on the
requirements written in the SRS document.
• The SRS documented is prepared by the Business Analyst by taking all the
requirements for the customer.
Q21. What is Storage Testing?
In Storage Testing we test those functionalities of the application which is
responsible for storing the data into database. The data entered by the end
user in GUI or front end, is the same data which is stored in the database. The
storage testing determines that the data taken from the front end of the
application is stored in correct place and in correct manner in the database.
Q22. What is Stress Testing?
Stress testing tests the software with a motive to check that the application do
not crashes if we increase the stress on the application by increasing the
large number of user working on the application. We can also apply the stress
on the application firing the lots of process which cannot be handled by the
application. We perform the stress testing on the application evaluate the
application capabilities at or beyond the limits of its specified requirements
to determine. Generally, this is a type of performance testing performed in a
very high level of load and stress condition.
Q23. What is Test Harness?
A test harness is a collection of software and test data required to test the
application by running it in different testing condition like stress, load,
data- driven, and monitoring its behavior and outputs. Test Harness contains
two main parts:
• Test execution engine
• Test script repository
Automation testing is the use of a tool to control the execution of tests and
compare the actual results with the expected results. It also involves the
setting up of test pre-conditions.
Q24. Can you define test driver and test stub?
• The Stub is called from the software component to be tested. It is used in top
• The driver calls a component to be tested. It is used in bottom up approach.
• Both test stub and test driver are dummy software components.
We need test stub and test driver because of following reason:
• Suppose we want to test the interface between modules A and B and we have
developed only module A. So we cannot test module A but if a dummy module is
prepare, using that we can test module A.
• Now module B cannot send or receive data from module A directly so, in these
cases we have to transfer data from one module to another module by some
external features. This external feature used is called Driver.
Q25.What is good design?
Design refers to functional design or internal design. Good internal design is
indicated by software code whose overall structure is clear, understandable,
easily modifiable, and maintainable; is robust with sufficient error-handling
and status logging capability, and works correctly when implemented. Good
functional design is indicated by an application whose functionality can be
traced back to customer and end-user requirements.
Q26. What makes a good QA or Test manager?
A good QA or Test manager should have following characteristics:
• Knowledge about Software development process
• Improve the teamwork to increase productivity
• Improve cooperation between software, test, and QA engineers
• To improvements the QA processes.
• Communication skills.
• able to conduct meetings and keep them focused
Q27. What is Manual scripted Testing and Manual Support testing?
Manual Scripted Testing: Testing method in which the test cases are designed and
reviewed by the team before executing it. It is done by manual testing teams.
Manual-Support Testing: Testing technique that involves testing of all the
functions performed by the people while preparing the data and using these data
from automated system. it is conducted by testing teams
Q28. What is Fuzz testing, backward compatibility testing and
Fuzz Testing: testing application by entering invalid, unexpected, or random
data to the application this testing is performed to ensure that application is
not crashing when entering incorrect and unformatted data.
Backward Compatibility Testing: Testing method which examines performance of
latest software with older versions of the test environment.
Assertion Testing: Type of testing consisting in verifying if the conditions
confirm the product requirements.
Q29. How does a client or server environment affect testing?
There are lots of environmental factors that affect the testing like speed of
data transfer data transfer, hardware, and server etc while working with client
or server technologies, testing will be extensive. When we have time limit, we
do the integration testing. In most of the cases we prefer the load, stress and
performance testing for examine the capabilities of the application for the
client or server environment.
Q30. What are the categories of defects?
There are three main categories of defects:
• Wrong: The requirements are implemented incorrectly in the application.
• Missing: When requirement given by the customer and application is unable to
meet those application.
• Extra: A requirement incorporated into the product that was not given by the
end customer. This is always a variance from the specification, but may be an
attribute desired by the user of the product.