Manual Testing Interview Questions
Manual Testing Interview Questions
Manual Testing Interview Questions
Ans. Software testing is the process of evaluating a system to check if it satisfies its business
requirements. It measures the overall quality of the system in terms of attributes. Like –
Basically, it is used for ensuring the quality of software to the stakeholders of the application.
1. Testing provides an assurance to the stakeholders that the product works as intended.
2. Avoidable defects leaked to the end-user/customer without proper testing adds a bad
3. Defects detected earlier phase of SDLC results in lesser cost and resource utilization of
correction.
5. The testing team adds another dimension to the software development by providing a
Ans. Testing (both manual and automated) can be stopped when one or more of the following
of test cases is executed after the last known bug fix with the agreed-upon value of pass-
percentage
2. Once the testing deadline is met – Testing can be stopped after deadlines get met with
3. Based on Mean Time Between Failure (MTBF) – MTBF is the time interval between two
inherent failures. Based on stakeholder’s decisions, if the MTBF is quite large, one can stop
4. Based on code coverage value – The testing phase can be stopped when the automated
code coverage reaches a specific threshold value with sufficient pass-percentage and no
critical bug.
Ques.4. What is Quality Assurance and what are the different activities involved in
Quality assurance?
Ans. Quality assurance is a process-driven approach that checks if the process of developing
the product is correct and conforming to all the standards. It is considered a preventive
measure. This is because it identifies the weakness in the process to build software. It
involves activities like document review, test case review, walk-throughs, inspection, etc.
Ques.5. What is Quality Control and what are the different types of testing involved
in QC?
Ans. Quality control is a product-driven approach that checks that the developed product
Ans. Following are the major differences between verification and validation-
# Verification Validation
This is done in order to ensure that the to the specified business requirements.
the standards.
Answers the question – “Are we building Answers the question – “Are we building
4.
the product right?” the right product?”
Ans. SDLC stands for Software Development Life Cycle. It refers to all the activities performed
Ans. The software testing life cycle refers to all the activities performed during testing of a
Test Design and Analysis – Here, test cases are designed, test data is prepared and
environment is prepared.
Test execution – The test cases are prepared, bugs are reported and retested once
resolved.
Test closure and reporting – A test closure report is prepared to have the final test
of the system.
Black box testing – In black-box testing, the tester need not have any knowledge of the
internal architecture or implementation of the system. The tester interacts with the
system through the interface providing input and validating the received output.
White box testing – In white box testing, the tester analyses the internal architecture of
the system as well as the quality of source code on different parameters like code
architecture of the system e.g. the tester may have access to the design documents or
database structure. This information helps the tester to test the application better.
Ans. Manual testing a type of testing that involves validation of the requirements of the
application by executing a predefined set of test cases manually without the use of any
automation tool.
Ans. Automation testing is a type of software testing that involves automated test case
execution using an automation tool. It helps in reducing the test execution time as the test
scripts written once, can be run automatically any number of times without any human
intervention.
1. Test execution using automation is fast and saves a considerable amount of time.
2. Carefully written test scripts remove the chance of human error during testing.
3. Tests execution can be scheduled for a nightly run using CI tools like Jenkins which can
4. Automation testing is very less resource-intensive. Once the tests are automated, test
execution requires almost no time of QAs. Saving QA bandwidth for other exploratory
tasks.
3. Automation scripts are limited to verification of the tests that are coded. These tests
may miss some error that is very glaring and easily identifiable to human(manual QA).
4. Even with some minor change in the application, script update and maintenance is
required.
Ans. Performance testing is a type of non-functional testing in which the performance of the
system is evaluated under expected or higher load. The various performance parameters
evaluated during performance testing are – response time, reliability, resource usage,
scalability, etc. The different types of performance testing are – Load, Stress, Endurance,
Ans. A test bed is a test environment used for testing an application. A test bed configuration
can consist of the hardware and software requirement of the application under test including
Ans. A test plan is a formal document describing the scope of testing, the approach to be
used, resources required and time estimate of carrying out the testing process. It is derived
Ans. A test scenario is derived from a use case. It is used for end to end testing of a feature
of an application. A single test scenario can cater to multiple test cases. The scenario testing
Ans. A test case is used to test the conformance of an application with its requirement
specifications. It is a set of conditions with pre-requisites, input values and expected results in
a documented form.
7. Actual result – The actual result after executing the test steps.
not.
Ans. Test data is data that is used to test the software with different inputs and helps to
check whether the corresponding output is as per the expected result or not. This data is
Ans. A test script is an automated test case written in any programming or scripting
application.
Ans Since we all are humans so it is obvious to make a mistake. Likewise, error is a similar
case that happens in software testing due to some missing scenario in the requirements,
Ans. A bug is a fault in a software product detected at the time of testing, causing it to
Defect Summary – A one-line summary of the defect, more like a defect title.
Expected Result – The expected behavior from which the application is deviating
Actual Result- The current erroneous state of the application w.r.t. the defect.
Defect Severity – Based on the criticality of the defect, this field can be set to minor,
Priority – Based on the urgency of the defect, this field can be set on a scale of P0 to
P3.
Ans. Some of the most widely used Defect Management tools are – Jira, Bugzilla, Redmine,
Ans. Defect density is the measure of the density of the defects in the system. It can be
calculated by dividing the number of defects identified by the total number of lines of code(or
Ans. A defect priority is the urgency of fixing the defect. Normally the defect priority is set on
Ans. Defect severity is the severity of the defect impacting the functionality. Based on the
organization, we can have different levels of defect severity ranging from minor to critical or
show stopper.
Ans. Below are the examples for different combinations of priority and severity-
users.
3. High priority-Low severity – Slight change in logo color or spelling mistake in the
company name.
Ans. A blocker is a bug of high priority and high severity. It prevents or blocks testing of
Ans. A critical bug is a bug that impacts a major functionality of the application and the
application cannot be delivered without fixing the bug. It is different from the blocker bug as
Ques.33. Explain the bug life cycle or the different states of a bug.
Assigned – The newly detected bug when assigned to the corresponding developer is in
Open – When the developer works on the bug, the bug lies in the Open state.
Rejected/Not a bug – A bug lies in rejected state in case the developer feels the bug is
not genuine.
Deferred – A deferred bug is one, fix of which is deferred for some time(for the next
Test – When fixed the bug is assigned to the tester and during this time the bug is
marked as in Test.
Reopened – If the tester is not satisfied with the issue resolution the bug is moved to
Verified – After the Test phase, if the tester feels the bug is resolved, it is marked as
verified.
Ans. Test design techniques are different standards of test designing that allow systematic
and widely accepted test cases. The different test design techniques can be categorized as
without executing the code. The various static test design techniques can be further
Walkthrough
Informal reviews
Technical reviews
Audit
Inspection
Management review
Static analysis of code – It includes analysis of the different paths and flows in
Compliance with coding standard – This evaluates the compliance of the code
Analysis of code metrics – The tool used for static analysis is required to
evaluate the different metrics like lines of code, complexity, code coverage, etc.
2. Dynamic Test Design Techniques – Dynamic test design techniques involve testing by
as black-box testing. These involve testing based on the specification of the system
the experience or intuition of the tester. The two most common forms of
Ans. Static testing is a kind of testing for reviewing the work products or documentation that
are being created throughout the entire project. It allows reviewing the specifications,
phase of testing.
So that the testers involved in it can understand the requirements in more detail before
starting the testing lifecycle which intends to help in delivering the quality product.
Ans. Testing performed by executing or running the application under test either manually or
using automation.
Ans. Specification-based test design techniques are also referred to as black-box testing. It
involves testing based on the specification of the system under test without knowing its
internal architecture. The different types of specification-based test design or black box
Equivalence partitioning – Grouping test data into logical groups or equivalence classes
with the assumption that all the data items lying in the classes will have the same
Boundary value analysis – Testing using the boundary values of the equivalence classes
In equivalence class partitioning, a set of input data that defines different test conditions are
partitioned into logically similar groups such that using even a single test data from the group
for testing can be considered as similar to using all the other data in that group.
For example, for testing a Square program (a program that prints the square of a number),
Set of Negative numbers, whole numbers, decimal numbers, set of large numbers, etc.
Ans. Boundary value analysis is a software testing technique for designing test cases wherein
the boundary values of the classes of the equivalence class partitioning are taken as input to
the test cases e.g. if the test data lies in the range of 0-100, the boundary value analysis will
Ans. Decision table testing is a type of specification-based test design technique or black-box
testing technique in which testing is carried out using decision tables showing the
application’s behavior based on different combinations of input values.
Decision tables are particularly helpful in designing test cases for complex business scenarios
Ans. A cause-effect graph testing is a black-box test design technique in which graphical
representation of input i.e. cause and output i.e. effect is used for test designing. This
technique uses different notations representing AND, OR, NOT, etc relations between the
Ans. State transition testing is a black box test design technique based on a state machine
model. State transition testing is based on the concept that a system can be defined as a
collection of multiple states and the transition from one state to another happens because of
some event.
Ans. A use case testing is a black-box testing approach in which testing is carried out using
use cases. A use case scenario is seen as an interaction between the application and
actors(users). These use cases are used for depicting requirements and hence can also serve
Ans. It is a metric that measures the amount of testing performed on software while
executing the test cases. Test coverage for any software can be calculated as the percentage
of the number of test areas or coverage items covered with respect to the total number of
test areas.
The higher the test coverage, the more the part of the software gets covered by test cases
Ans. Structure-based test design techniques are also referred to as white box testing. In
these techniques, the knowledge of code or internal architecture of the system is required to
carry out the testing. The various kinds of testing structure-based or white testing techniques
are-
Statement testing – A white box testing technique in which the test scripts are
designed to execute the application’s code statements. Its coverage is measured as the
to execute the different decision-branches (e.g. if-else conditions) in the application. Its
coverage is measured as the percentage of decision points out of the total decision
application with both True and False outcome for each condition. Hence for n
of condition outcomes are tested at least once. Hence for 100% coverage, we will have
2^n test scripts. This is very exhaustive and very difficult to achieve 100% coverage.
testing in which the combinations which don’t affect the outcomes are discarded.
Path testing – Testing the independent paths in the system(paths are executable
Ans. Code coverage is the measure of the amount of code covered by the test scripts. It gives
the idea of the part of the application covered by the test suite.
Ques.47. What are Statement testing and statement coverage in white box testing?
Ans. Statement testing is a white box testing approach in which test scripts are designed to
Statement coverage is the measure of the percentage of statements of code executed by the
test scripts out of the total code statements in the application. The statement coverage is the
Ans. Decision testing or branch testing is a white box testing approach in which test coverage
is measured by the percentage of decision points(e.g. if-else conditions) executed out of the
Ans. Testing can be performed at different levels during the development process. Performing
testing activities at multiple levels helps in the early identification of bugs. The different levels
of testing are –
1. Unit Testing
2. Integration Testing
3. System Testing
4. Acceptance Testing
Ans. Unit testing is the first level of testing and it involves testing individual modules of the
Ans. Integration testing is performed after unit testing. In integration testing, we test the
group of related modules. It aims at finding interfacing issues between the modules.
1. Big bang Integration Testing – In big bang integration testing, testing starts only after
4. Hybrid Integration Testing – Hybrid integration testing is the combination of both Top-
down and bottom-up integration testing. In this approach, the integration starts from
the middle layer and testing is carried out in both the direction
Ans. In the case of top-down integration testing, many times lower-level modules are not
developed while beginning testing/integration with top-level modules. In those cases, Stubs
or dummy modules are used that simulate the working of modules by providing a hard-coded
Ans. In the case of bottom-up integration testing, drivers are used to simulating the working
of top-level modules in order to test the related modules lower in the hierarchy.
Ans. System testing is the level of testing where the complete software is tested as a whole.
The conformance of the application with its business requirements is checked in system
testing.
Ans. Acceptance testing is testing performed by the potential end-user or customers to check
if the software conforms to the business requirements and can be accepted for use.
Ans UAT testing is the last phase of the testing lifecycle. Its main focus is to validate that
software is working in accordance with business requirements. It also ensures that the
application is user-friendly and can handle complex scenarios at its best before releasing the
Ans. End-to-End testing is a type of testing where the entire application undergoes testing, to
test each functionality of the software is working as expected and there is no loophole
remaining in it. It ensures that the application is user-friendly and meets the business
requirements.
Ques.59. What is alpha testing?
Ans. Alpha testing is a type of acceptance testing that is performed testers or the internal
Ans. Beta testing is the testing done by end-users at the end user’s site. It allows users to
Ans. Adhoc testing is an unstructured way of testing that is performed without any formal
Ans. Monkey testing is a type of testing that is performed randomly without any predefined
Ans. In the case of Adhoc testing although there are no predefined or documented test cases
still testers have an understanding of the application. While in the case of monkey testing
Ans. Exploratory testing is a type of testing in which new test cases are added and updated
while exploring the system or executing test cases. Unlike scripted testing, test design and
Ans. Load testing is a type of performance testing which aims at finding an application’s
performance under the expected workload. During load testing, we evaluate the response
monitored under a higher workload than expected. Stress testing is done to find memory
Ans. Volume testing is a type of performance testing in which the performance of the
application is evaluated with a large amount of data. It checks the scalability of the
application and helps in the identification of a bottleneck with a high volume of data.
Ans. Endurance testing is a type of performance testing which aims at finding issues like
memory leaks when an application is subjected to load test for a long period of time.
Ans. Spike testing is a type of performance testing in which the application’s performance is
measured while suddenly increasing the number of active users during the load test.
Ans. UI or user interface testing is a type of testing that aims at finding Graphical User
Interface defects in the application and checks that the GUI conforms to the specifications.
Ans. Usability testing is the type of testing that aims at determining the ease of using the
Ans. Accessibility testing is the type of testing which aims at determining the ease of use or
Ans. Compatibility testing is validating software to see how compatible the software is with a
Ans. Configuration testing is the type of testing used to evaluate the configurational
requirements of the software along with the effect of changing the required configuration.
Ans. Globalization testing is a type of testing in which application is evaluated for its
functioning across the world in different cultures, languages, locales, and countries.
Ans. Negative testing is a type of testing in which the application’s robustness(graceful exiting
or error reporting) is evaluated when provided with invalid input or test data.
Ans. Security testing is a type of testing which aims at evaluating the integrity,
Ans. Penetration testing or pen testing is a type of security testing in which application is
evaluated(safely exploited) for different kinds of vulnerabilities that any hacker could exploit.
Ans. Robustness testing is a type of testing that is performed to find the robustness of the
application i.e. the ability of the system to behave gracefully in case of erroneous test steps
analyzing the application’s behavior with concurrent users accessing the same functionality.
Ans. Backend testing is a type of testing that involves testing the backend of the system
which comprises testing the databases and the APIs in the application.
Ans. A/B testing is a type of testing in which the two variants of the software product are
exposed to the end-users and on analyzing the user behavior on each variant, the better
Ans. Risk analysis is the analysis of the risk identified and assigning an appropriate risk level
Ans. Regression testing involves testing the application to verify that a new code change
doesn’t affect the other parts of the application. Whereas, in retesting, we verify if the fixed
Ans. Black-box testing is a type of testing in which the internal architecture of the code is not
required for testing. It is usually applicable for system and acceptance testing.
Whereas white-box testing requires internal design and implementation knowledge of the
application being tested. It is usually applicable for Unit and Integration testing.
Smoke testing is a type of testing in which all major functionalities of the application
are tested before carrying out exhaustive testing. Whereas, sanity testing is a subset of
regression testing which is carried out when there is some minor fix in the application
in a new build.
The smoke tests are usually documented or are automated. Whereas, the sanity tests
Ans. A build is an executable file provided by the developers to the testing team for testing
the application. It undergoes various iterations of fixing and testing until the application works
as expected. Once the application becomes stable and ready for the end-users, it’s released in
the market.
Whereas, a release is an installable software provided to the end-users after it gets certified
by the testing team. During the release of any software to the client, release notes are
attached to it that includes a number of defects still open, covered user stories, change-
Ques.89. What is the difference between bug leakage and bug release?
Ans. Bug leakage is when the tested software is released into the market and the end-user
finds bugs in it. These include the bugs that got missed by the testing team during the testing
phase.
Whereas, bug release is when a specific version of the software is released in the market with
some known bugs which are intended to get fixed in the later versions. These types of issues
are of low priority and are mentioned in the release notes while sharing with the end-users.
Ans. Defect triage is a process in which the defects are prioritized based on different factors
like severity, risk, the time required to fix the bug, etc. The defect triage meeting includes the
different stakeholders – the development team, testing team, project manager, BAs, etc,
Ans. A test harness is a collection of test scripts and test data usually associated with the unit
and integration testing. It involves stubs and drivers that are required for testing software
Ans. All pair testing is a type of testing in which the application is tested with all possible
Ans. Failover testing is a type of testing that is used to verify the application’s ability to
allocate more resources(more servers) in case of failure and transferring the processing part
Ans. Fuzz testing is a type of testing in which a large amount of random data is provided as
input to the application in order to find security loopholes and other issues in the application.
Ans. Pilot testing is testing carried out as a trial by a limited number of users to evaluate the
system and provide their feedback before the complete deployment is carried out.
Ans. In dev-box testing, a tester performs testing on the developer’s system to verify if the
major functionalities of the application are stable and ready for testing.
Ans. Mutation testing is a type of white box testing in which the source code of the application
is mutated to cause some defects in its working. After that, the test scripts are executed to
check for their correctness by verifying the failures caused by the mutant code.
Ans. In software testing, a requirement traceability matrix is a table that relates the high-
level requirements with either detailed requirements, test plans, or test cases. RTM helps in
application or program. This metric provides an indication of the amount of effort required to
L – N + 2P, where:
Ans. A set of prerequisites that are required to kick-off the testing activity and that includes
Test environment, Test tool, Test Data, database connectivity, and many more.
Ans. An exit criteria is a formal set of conditions that specify the agreed-upon features or
state of the application in order to mark the completion of the process or product.
Ans. Testing is primarily performed by the testing team in order to find the defects in the
the cause of the defect is located and fixed. Thus removing the defect and preventing any
Another difference between the two is – testing can be done without any internal knowledge
of software architecture. Whereas debugging requires knowledge of software architecture and
coding.
Ans. The agile methodology of software development is based on an iterative and incremental
approach. In this model, the application is broken down into smaller builds on which different
cross-functional teamwork together providing rapid delivery along with adapting to changing
Also, check – Agile vs Waterfall | Selecting the right model for your project
Ans. A scrum is a process for implementing Agile methodology. In scrum, time is divided into
1. Product Owner – The product owner owns the whole development of the product,
assigns tasks to the team and acts as an interface between the scrum
2. Scrum Master – The scrum master monitors that scrum rules get followed in the team
3. Scrum Team – A scrum team participate in the scrum meetings and perform the tasks
assigned.
Ans. A scrum meeting is a daily meeting in the scrum process. This meeting is conducted by
scrum master and update of the previous day’s work along with the next day’s task and
development of the software is driven by test cases created for the functionality to be
implemented. In TDD, first, the test cases are created and then code to pass the tests is
Ans. A latent defect is an unidentified defect present in the current release but is not visible
because the conditions in which the defect could be found have never met. These types of
defects occur only when a particular event gets triggered which was concealing their
presence.
Whereas a masked defect is an existing defect that has not yet caused any failure because
Ans. PDCA cycle is a key for continuous process improvement in software development. It
Plan – Plan the objectives, goals, initiatives which help to reach customer satisfaction.
Do – It implements the plan into action. To serve the customer with better quality and
Check – To check the progress of your plan which has been implemented. The result
Act – Acting upon the results to do further improvement which helps in achieving the
planned goals.
Ques.110. What is Defect Cascading?
And. Defect cascading is the triggering of a defect by another defect. It happens when a
defect is not caught by the testing team and it gives rise to another defect.
Ans. Test Metric is a quantitative analysis that helps in monitoring the progress of a software
project. Every project has its own timeline so to ensure the delivery of the project on time
requires setting deliverables at different intervals and this aspect of measuring the progress is
Ans. Context-driven testing is the type of testing that involves adopting the test practices,
methodologies and at times customizing them based on the context of the project.
In this type of testing, instead of following best practices, we follow what works best for the
project based on the skills, experience, and judgment of the testing team.