Manual Testing Interview Questions
Manual Testing Interview Questions
Answer.
That’s how it ensures that the Test Plan covers all the requirements and links to their
latest version.
Answer. Read the following points to know the difference between Pilot and Beta testing.
1. We do the beta test when the product is about to release to the customer whereas pilot
testing takes place in the earlier phase of the development cycle.
2. In the beta test, testing application is given to few users to make sure that application
meet the customer requirements and does not contain any showstopper bug. Whereas, in
the pilot test, few members of the testing team work at the Customer site to set up the
product. They give their feedback also to improve the quality of the end product.
Answer. Risk analysis is the process of identifying the hidden issues that may derail the
successful delivery of the application. It also prioritizes the sequence of resolving the
identified risks for testing purpose.
Following are some of the risks that are of concern to the QA.
1. New Hardware.
2. New Technology.
3. New Automation Tool.
4. The sequence of code delivery.
5. Availability of test resources for the application.
1. High magnitude: Impact of the bug on the other functionality of the application.
2. Medium: it is tolerable in the application but not desirable.
3. Low: it is tolerable. This type of risk has no impact on the company business.
Q-4. What is Silk Test and why should you use it?
Here, we have laid down the 50 most essential manual testing interview questions and
answers. Any tester who is preparing for a job change or wish to acquaint himself with the
nitty-gritty of the software testing should read this post for quick results.
Our team has put a lot of efforts in the selection and preparation of these interview
questions for manual testers. They have thought through all the answers and tried the
best to keep them simple and easy to remember. However, if you like to improve any of
the answers or wish to add a new question, then do let us know.
Also, we are listing a few quick tips below. These will help you in presenting yourself with
confidence during interviews.
Apart from these manual testing interview questions, you might like to check out the
below post, one of best technical questionnaires for Senior test engineers.
Recommended – Top 20 Interview Questions and Answers for QA Engineers.
The list of most important manual testing interview questions is given below. Read them
all to boost your testing concepts.
Answer.
That’s how it ensures that the Test Plan covers all the requirements and links to their
latest version.
Answer. Read the following points to know the difference between Pilot and Beta testing.
1. We do the beta test when the product is about to release to the customer whereas pilot
testing takes place in the earlier phase of the development cycle.
2. In the beta test, testing application is given to few users to make sure that application
meet the customer requirements and does not contain any showstopper bug. Whereas, in
the pilot test, few members of the testing team work at the Customer site to set up the
product. They give their feedback also to improve the quality of the end product.
Q-3. Describe how to perform Risk analysis during software testing?
Answer. Risk analysis is the process of identifying the hidden issues that may derail the
successful delivery of the application. It also prioritizes the sequence of resolving the
identified risks for testing purpose.
Following are some of the risks that are of concern to the QA.
1. New Hardware.
2. New Technology.
3. New Automation Tool.
4. The sequence of code delivery.
5. Availability of test resources for the application.
1. High magnitude: Impact of the bug on the other functionality of the application.
2. Medium: it is tolerable in the application but not desirable.
3. Low: it is tolerable. This type of risk has no impact on the company business.
Q-4. What is Silk Test and why should you use it?
1. It’s a tool developed for performing the regression and functionality testing of the
application.
2. It benefits when we are testing Window based, Java, the web, and the traditional
client/server applications.
3. Silk Test help in preparing the test plan and managing them to provide the direct
accessing of the database and validation of the field.
Q-5. What is the difference between Master Test Plan and Test Plan?
Answer. The difference between Master Plan and Test Plan can be described using
following points.
1. Master Test Plan contains all the test scenarios and risks prone areas of the application.
Whereas, Test Plan document contains test cases corresponding to test scenarios.
2. Master Test Plan captures each and every test to be run during the overall development
of application whereas test plan describes the scope, approach, resources and schedule of
performing the test.
3. MTP includes test scenarios to be executed in all the phases of testing that run during
the complete life cycle of the application development. Whereas, a separate Test Plan
exists for each phase of testing like Unit, Functional, and System which contains the test
cases related to that type only.
4. Only for big projects, we need a Master Test Plan which requires execution in all phases
of testing. However, preparing a basic Test Plan is enough for small projects.
Q-6. How do you handle a non-reproducible bug?
Using the above tools we can create test scripts to verify the application automatically.
After completing the test execution, these tools also generate the test reports.
What are the factors that you’ll consider to choose automated testing over
manual testing?
Answer.
The choice of automated testing over manual testing depends on the following factors.
Answer.
The test driver is a piece of code that calls a software component under test. It is useful in
testing that follows the bottom-up approach.
Test stub is a dummy program that integrates with an application to complete its
functionality. These are relevant for testing that uses the top-down approach.
Let’s take an example.
1. Let’s say there is a scenario to test the interface between modules A and B.
We have developed only module-A. Then we can test module-A only if we have
real module-B or a dummy module for it. In this case, we call module-B as the
Test Stub
2. Now, module-B can’t send or receive data directly from module-A. In such
scenario, we’ve to move data from one module to another using some external
features called Test Driver.
-----------------------------------------
What are the essential qualities of an experienced QA or Test Lead?
-----------------------------------------------------------------------------------------------------------
What are the different types of software testing?
Answer. Following is the list of various testing types used by manual testers.
Unit testing
Integration testing
Regression testing
Smoke testing
Functional testing
Performance testing
Load testing
stress testing
Endurance testing
White box and Black box testing
Alpha and Beta testing
System testing
------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------
What is a Test case?
Answer.
A test case is a sequence of actions and observations that are used to verify the desired
functionality. A good test case helps to identify problems in the requirements or design of
an application.
--------------------------------------------------------------------------------------------
What is Agile testing and why is it important?
Answer. Agile testing is a software testing process which evaluates software from the
customer point of view. And it is important because this does not require Dev to complete
coding for starting QA. Instead, the coding and testing both goes hand in hand. However,
it may require continuous customer interaction.
Q-15. How do you test a product if the requirements are yet to freeze?
Answer. If the requirement spec is not available for a product, then a test plan
can be created based on the assumptions made about the product. But we
should get all assumptions well documented in the test plan.
How will you tell if enough test cases have been created to test a product?
Answer. First of all, we’ll check if every requirement has at least one test case covered. If
yes, then we can say that there are enough test cases to test the product.
Answer. When a bug shows up, we can follow the below steps.
Run more tests to make sure that the problem has a clear description.
Run a few more tests to ensure that the same problem doesn’t exist with different
inputs.
Once we are sure of the full scope of the bug, then we can add details and report
it.
If a product is in production and one of its modules gets updated, then is it
necessary to retest?
Answer. It is advisable to perform regression testing and run tests for all of the other
modules as well. Finally, the QA should carry out the System testing.
Answer. The functional requirement specifies how a product should run whereas a non-
functional requirement represents how it should be.
Functional Requirements.
Authentication
Business rules
Historical Data
Legal and Regulatory Requirements
External Interfaces
-------------------------------------------------------------------------------------------------------
How comes the Severity and Priority relate to each other?
Answer.
Answer. The severity of a bug can be low, medium or high depending on the context.
Answer.
Entry criteria – It is a process that should run when a system begins. It includes the
following artifacts.
Exit Criteria – It signals when the testing should complete and when should the product be
ready to release. It includes the following artifacts.
-------------------------------------------------------------------------------------------------------------
---What is test strategy?
Answer. Test strategy is an approach to carry out the testing activity. It covers the
following.
Answer.
Smoke testing confirms the basic functionality works for a product. It requires you to
identify the most basic test cases for execution.
Sanity testing, on the other hand, ensures that the product runs without any logical
errors. For example, if we are testing a calculator app; we may multiply a number by 3 and
check whether the sum of the digits of the answer is divisible by 3.
Answer. A bug is usually same as the defect. Both of them represents an unexpected
behavior of the software.
However, an error would also fall in the same category. But in some cases, errors are fixed
values. For example – 404/405 errors in HTML pages.
-------------------------------------------------------------------------------------------------------------
---What is the difference between High level and Low-Level test case?
Answer.
High-level test cases cover the core functionality of a product like standard business flows.
Low-level test cases are those related to user interface (UI) in the application.
Q-27. What is the difference between Static testing and dynamic testing?
Answer.
Static Testing.
It is a white box testing technique which directs the developers to verify their code with
the help of checklist to find errors in it.
Developers can start it done without actually finalizing the application or program.
Static testing is more cost effective than Dynamic testing.
It covers more areas than Dynamic testing in a shorter time.
Dynamic Testing.
Dynamic testing involves the execution of an actual application with valid inputs
and checking of the expected output.
Examples of Dynamic testing are Unit Testing, Integration Testing, System Testing
and Acceptance Testing.
Dynamic testing happens after the code deployment.
It starts during the validation stage.
-------------------------------------------------------------
---------------------------------------
50 Manual Testing Interview Questions Every
Tester Should Know
Interview Questions QA Interview Updated: October 20, 2017 Meenakshi Agarwal interview
questions for senior test engineer, interview questions for software test engineers, qa interview
questions
Here, we have laid down the 50 most essential manual testing interview questions and
answers. Any tester who is preparing for a job change or wish to acquaint himself with the
nitty-gritty of the software testing should read this post for quick results.
Our team has put a lot of efforts in the selection and preparation of these interview
questions for manual testers. They have thought through all the answers and tried the
best to keep them simple and easy to remember. However, if you like to improve any of
the answers or wish to add a new question, then do let us know.
Also, we are listing a few quick tips below. These will help you in presenting yourself with
confidence during interviews.
Apart from these manual testing interview questions, you might like to check out the
below post, one of best technical questionnaires for Senior test engineers.
The list of most important manual testing interview questions is given below. Read them
all to boost your testing concepts.
Answer.
That’s how it ensures that the Test Plan covers all the requirements and links to their
latest version.
Answer. Read the following points to know the difference between Pilot and Beta testing.
1. We do the beta test when the product is about to release to the customer whereas pilot
testing takes place in the earlier phase of the development cycle.
2. In the beta test, testing application is given to few users to make sure that application
meet the customer requirements and does not contain any showstopper bug. Whereas, in
the pilot test, few members of the testing team work at the Customer site to set up the
product. They give their feedback also to improve the quality of the end product.
Answer. Risk analysis is the process of identifying the hidden issues that may derail the
successful delivery of the application. It also prioritizes the sequence of resolving the
identified risks for testing purpose.
Following are some of the risks that are of concern to the QA.
1. New Hardware.
2. New Technology.
3. New Automation Tool.
4. The sequence of code delivery.
5. Availability of test resources for the application.
1. High magnitude: Impact of the bug on the other functionality of the application.
2. Medium: it is tolerable in the application but not desirable.
3. Low: it is tolerable. This type of risk has no impact on the company business.
Q-4. What is Silk Test and why should you use it?
Q-5. What is the difference between Master Test Plan and Test Plan?
Answer. The difference between Master Plan and Test Plan can be described using
following points.
1. Master Test Plan contains all the test scenarios and risks prone areas of the application.
Whereas, Test Plan document contains test cases corresponding to test scenarios.
2. Master Test Plan captures each and every test to be run during the overall development
of application whereas test plan describes the scope, approach, resources and schedule of
performing the test.
3. MTP includes test scenarios to be executed in all the phases of testing that run during
the complete life cycle of the application development. Whereas, a separate Test Plan
exists for each phase of testing like Unit, Functional, and System which contains the test
cases related to that type only.
4. Only for big projects, we need a Master Test Plan which requires execution in all phases
of testing. However, preparing a basic Test Plan is enough for small projects.
A tester can take the following actions to handle the non-reproducible bugs.
Q-8. What are the factors that you’ll consider to choose automated testing over
manual testing?
Answer.
The choice of automated testing over manual testing depends on the following factors.
Q-9. What is the difference between a Test Driver and Test Stub?
Answer.
The test driver is a piece of code that calls a software component under test. It is useful in
testing that follows the bottom-up approach.
Test stub is a dummy program that integrates with an application to complete its
functionality. These are relevant for testing that uses the top-down approach.
1. Let’s say there is a scenario to test the interface between modules A and B. We have
developed only module-A. Then we can test module-A only if we have real module-B or a
dummy module for it. In this case, we call module-B as the Test Stub.
2. Now, module-B can’t send or receive data directly from module-A. In such scenario,
we’ve to move data from one module to another using some external features called Test
Driver.
Answer. Following is the list of various testing types used by manual testers.
Unit testing
Integration testing
Regression testing
Shakeout testing
Smoke testing
Functional testing
Performance testing
Load testing
stress testing
Endurance testing
White box and Black box testing
Alpha and Beta testing
System testing
Testing objectives.
Test scope.
Testing the frame.
The environment
Reason for testing
The criteria for entrance and exit
Deliverables
Risk factors
Answer.
A test case is a sequence of actions and observations that are used to verify the desired
functionality. A good test case helps to identify problems in the requirements or design of
an application.
Answer. Agile testing is a software testing process which evaluates a software from the
customer point of view. And it is important because this does not require Dev to complete
coding for starting QA. Instead, the coding and testing both goes hand in hand. However,
it may require continuous customer interaction.
Q-15. How do you test a product if the requirements are yet to freeze?
Answer. If the requirement spec is not available for a product, then a test plan can be
created based on the assumptions made about the product. But we should get all
assumptions well documented in the test plan.
Q-16. How will you tell if enough test cases have been created to test a product?
Answer. First of all, we’ll check if every requirement has at least one test case covered. If
yes, then we can say that there are enough test cases to test the product.
Answer. When a bug shows up, we can follow the below steps.
Run more tests to make sure that the problem has a clear description.
Run a few more tests to ensure that the same problem doesn’t exist with different inputs.
Once we are sure of the full scope of the bug, then we can add details and report it.
Q-18. If a product is in production and one of its modules gets updated, then is
it necessary to retest?
Answer. It is advisable to perform regression testing and run tests for all of the other
modules as well. Finally, the QA should carry out the System testing.
Answer. The functional requirement specifies how a product should run whereas a non-
functional requirement represents how it should be.
Functional Requirements.
Authentication
Business rules
Historical Data
Legal and Regulatory Requirements
External Interfaces
Non-functional Requirements.
Performance
Reliability
Security
Recovery
Data Integrity
Usability
Q-20. How comes the Severity and Priority relate to each other?
Answer.
Answer. The severity of a bug can be low, medium or high depending on the context.
Answer.
Entry criteria – It is a process that should run when a system begins. It includes the
following artifacts.
Exit Criteria – It signals when the testing should complete and when should the product be
ready to release. It includes the following artifacts.
Answer.
Smoke testing confirms the basic functionality works for a product. It requires you to
identify the most basic test cases for execution.
Sanity testing, on the other hand, ensures that the product runs without any logical
errors. For example, if we are testing a calculator app; we may multiply a number by 3 and
check whether the sum of the digits of the answer is divisible by 3.
Answer. A bug is usually same as the defect. Both of them represents an unexpected
behavior of the software.
However, an error would also fall in the same category. But in some cases, errors are fixed
values. For example – 404/405 errors in HTML pages.
Q-26. What is the difference between High level and Low-Level test case?
Answer.
High-level test cases cover the core functionality of a product like standard business flows.
Low-level test cases are those related to user interface (UI) in the application.
Q-27. What is the difference between Static testing and dynamic testing?
Answer.
Static Testing.
It is a white box testing technique which directs the developers to verify their code with
the help of checklist to find errors in it.
Developers can start it done without actually finalizing the application or program.
Static testing is more cost effective than Dynamic testing.
It covers more areas than Dynamic testing in a shorter time.
Dynamic Testing.
Dynamic testing involves the execution of an actual application with valid inputs and
checking of the expected output.
Examples of Dynamic testing are Unit Testing, Integration Testing, System Testing and
Acceptance Testing.
Dynamic testing happens after the code deployment.
It starts during the validation stage.
Answer.
Test Harness requires configuring a set of tools and input data to test an application under
various conditions. It involves monitoring the actual output with expected output for
correctness.
-------------------------------------------------------------------------------------------------------------
--
. What is Defect Leakage?
Answer.
Defect leakage occurs at the Customer or the End-user side after the product delivery. If
the end user sees any issue in the application, then such bugs lead to Defect leakage. And
this process of finding bugs is also called as Bug Leakage.
-------------------------------------------------------------------------------------------------------------
---
What kind of document will you need to begin Functional testing?
Answer.
It is none other than the Functional specification document. It defines the full
functionality of a product.
Other documents are also useful in testing like user manual and BRS.
Gap analysis is another document which can help in understanding the expected
and existing system.
Q-31. Beside test case & test plan, what documents a tester should produce?
Answer. Here are a few other documents to prepare.
Testing metrics
Test design specs
End-to-end scenarios
Test summary reports
Bug reports
Answer. BRD provides a detailed business solution for a project including the
documentation of customer needs and expectations.
Answer. Risk analysis is a technique to identify the things that can go wrong in a software
development project. They can negatively impact the scope, quality, timeliness, and cost
of a project.
However, everyone involved in the project has a part in minimizing the risk. But it’s the
lead who ensures that whole team understands the individual role in managing the risk.
----------------------------------------------------------------------------------------------------
What is exploratory testing?
Answer.
Exploratory testing is a process which lets a tester to concentrate more on execution and
less on planning.
Answer. No. The system testing should start only if all modules arc in place and work
correctly. However, it should happen before the UAT (User Acceptance testing).
Answer.
Here are the two principal reasons that make it impossible to test a program entirely.
Answer.
Testing is to find out defects while using a product whereas debugging is to reach
the part of the code causing failure.
Debugging is isolating the problem area in the code done by a developer whereas
Testing is identifying the bug in an application and done by a tester.
Answer.
Black-box testing.
It doesn’t require the knowledge of internal design or code. So the tests are based on
requirements and functionality. Black box testing focuses on finding the following errors.
Interface errors
Performance errors
Initialization errors
Incorrect or missing functionality
Errors in accessing external database
Glass-box testing or White-box testing.
It requires familiarity with the internal design and application code. So the tests
concentrate on path coverage, branch coverage, and statement coverage. It is expected to
cover the following.
Answer. Gap analysis reveals any deviation between the features available for testing and
how the customer perceives them to be.
Traceability matrix is a testing tool which testers can use to track down the gaps.
Error Guessing.
It is a test case design technique in which testers have to guess the defects that might
occur and write test cases to represent them.
Error Seeding.
It is the process of adding known bugs in a program for the tracking the rate of detection
& removal. It also helps to estimate the number of faults remaining in the program.
Risk-based Testing is the term used for an approach to creating a Test Strategy that is
based on prioritizing tests by risk. The basis of the approach is a detailed risk analysis and
prioritizing of risks by risk level. Tests to address each risk are then specified, starting with
the highest risk first.
3. A wholesaler sells printer cartridges. The minimum order quantity is 5. There is a 20%
discount for orders of 100 or more printer cartridges. You have been asked to prepare test
cases using various values for the number of printer cartridges ordered. Which of the
following groups contain three test inputs that would be generated using Boundary Value
Analysis?
4, 5, 99
4. What is the KEY difference between preventative and reactive approaches to testing?
Preventative tests are designed early; reactive tests are designed after the software has
been produced.
5. What is the purpose of exit criteria?
The likelihood of an adverse event and the impact of the event determine the level of
risk.
Decision table testing is used for testing systems for which the specification takes the
form of rules or cause-effect combinations. In a decision table the inputs are listed in a
column, with the outputs in the same column but below the inputs. The remainder of the
table explores combinations of inputs to define the outputs produced.
Learn More About Decision Table Testing Technique in the Video Tutorial here
9. Which of the following defines the expected results of a test? Test case specification or
test design specification.
11. As part of which test process do you determine the exit criteria?
13. Given the following fragment of code, how many tests are required for 100% decision
coverage?
thenbiggest_dimension = width
end_if
elsebiggest_dimension = length
thenbiggest_dimension = height
end_if
end_if
14. You have designed test cases to provide 100% statement and 100% decision coverage
for the following fragment of code. if width > length then biggest_dimension = width else
biggest_dimension = length end_if The following has been added to the bottom of the
code fragment above. print "Biggest dimension is " &biggest_dimensionprint "Width: " &
width print "Length: " & length How many more test cases are required?
16. What is the difference between Testing Techniques and Testing Tools?
Testing technique: – Is a process for ensuring that some aspects of the application system
or unit functions properly there may be few techniques but many tools.
Testing Tools: – Is a vehicle for performing a test process. The tool is a resource to the
tester, but itself is insufficient to conduct testing
17. We use the output of the requirement analysis, the requirement specification as the
input for writing …
User Acceptance Test Cases
18. Repeated Testing of an already tested program, after modification, to discover any
defects introduced or uncovered as a result of the changes in the software being tested or
in another related or unrelated software component:
Regression Testing
Component testing, also known as unit, module and program testing, searches for defects
in, and verifies the functioning of software (e.g. modules, programs, objects, classes, etc.)
that are separately testable. Component testing may be done in isolation from the rest of
the system depending on the context of the development life cycle and the system. Most
often stubs and drivers are used to replace the missing software and simulate the
interface between the software components in a simple manner. A stub is called from the
software component to be tested; a driver calls a component to be tested.
Testing the end to end functionality of the system as a whole is defined as a functional
system testing.
Independent testers are unbiased and identify different defects at the same time.
22. In a REACTIVE approach to testing when would you expect the bulk of the test design
work to be begun?
The bulk of the test design work begun after the software or system has been produced.
There are currently seven different agile methodologies that I am aware of:
24. Which activity in the fundamental test process includes evaluation of the testability of
the requirements and system?
A 'Test Analysis' and 'Design' includes evaluation of the testability of the requirements
and system.
25. What is typically the MOST important reason to use risk to drive testing efforts?
Random testing often known as monkey testing. In such type of testing data is generated
randomly often using a tool or automated mechanism. With this randomly generated
input the system is tested and results are analysed accordingly. These testing are less
reliable; hence it is normally used by the beginners and to see whether the system will
hold up under adverse effects.
27. Which of the following are valid objectives for incident reports?
1. Provide developers and other parties with feedback about the problem to enable
identification, isolation and correction as necessary.
2. Provide ideas for test process improvement.
3. Provide a vehicle for assessing tester competence.
4. Provide testers with a means of tracking the quality of the system under test.
28. Consider the following techniques. Which are static and which are dynamic
techniques?
1. Equivalence Partitioning.
2. Use Case Testing.
3. Data Flow Analysis.
4. Exploratory Testing.
5. Decision Testing.
6. Inspections.
Data Flow Analysis and Inspections are static; Equivalence Partitioning, Use Case Testing,
Exploratory Testing and Decision Testing are dynamic.
29. Why are static testing and dynamic testing described as complementary?
Because they share the aim of identifying defects but differ in the types of defect they
find.
In contrast to informal reviews, formal reviews follow a formal process. A typical formal
review process consists of six main steps:
1. Planning
2. Kick-off
3. Preparation
4. Review meeting
5. Rework
6. Follow-up.
The moderator (or review leader) leads the review process. He or she determines, in co-
operation with the author, the type of review, approach and the composition of the
review team. The moderator performs the entry check and the follow-up on the rework,
in order to control the quality of the input and output of the review process. The
moderator also schedules the meeting, disseminates documents before the meeting,
coaches other team members, paces the meeting, leads possible discussions and stores
the data that is collected.
An input or output ranges of values such that only one value in the range becomes a test
case.
34. A Type of functional Testing, which investigates the functions relating to detection of
threats, such as virus from malicious outsiders?
Security Testing
35. Testing where in we subject the target of the test , to varying workloads to measure
and evaluate the performance behaviours and ability of the target and of the test to
continue to function properly under these different workloads?
Load Testing
36. Testing activity which is performed to expose defects in the interfaces and in the
interaction between integrated components is?
Structure-based testing techniques (which are also dynamic rather than static) use the
internal structure of the software to derive test cases. They are commonly called 'white-
box' or 'glass-box' techniques (implying you can see into the system) since they require
knowledge of how the software is implemented, that is, how it works. For example, a
structural technique may be concerned with exercising loops in the software. Different
test cases may be derived to exercise the loop once, twice, and many times. This may be
done regardless of the functionality of the software.
After the software has changed or when the environment has changed Regression testing
should be performed.
A negative test is when you put in an invalid input and receives errors. While a positive
testing, is when you put in a valid input and expect some action to be completed in
accordance with the specification.
Re-testing ensures the original fault has been removed; regression testing looks for
unexpected side effects.
44. What type of review requires formal entry and exit criteria, including metrics?
Inspection
46. An input field takes the year of birth between 1900 and 2004 what are the boundary
values for testing this field?
1899,1900,2004,2005
47. Which of the following tools would be involved in the automation of regression test?
a. Data tester b. Boundary tester c. Capture/Playback d. Output comparator.
d. Output comparator
48. To test a function, what has to write a programmer, which calls the function to be
tested and passes it test data.
Driver
49. What is the one Key reason why developers have difficulty testing their own work?
Lack of Objectivity
The answer depends on the risk for your industry, contract and special requirements.
It depends on the risks for the system being tested. There are some criteria bases on
which you can stop testing.
52. Which of the following is the main purpose of the integration strategy for integration
testing in the small?
The main purpose of the integration strategy is to specify which modules to combine
when and how many at once.
Semi-random test cases are nothing but when we perform random test cases and do
equivalence partitioning to those test cases, it removes redundant test cases, thus giving
us semi-random test cases.
54. Given the following code, which statement is true about the minimum number of test
cases required for full statement and branch coverage?
Read p
Read q
IF p+q> 100
ENDIF
IF p > 50
ENDIF
55. What is black box testing? What are the different black box testing techniques?
Black box testing is the software testing method which is used to test the software
without knowing the internal structure of code or program. This testing is usually done to
check the functionality of an application. The different black box testing techniques are
1. Equivalence Partitioning
2. Boundary value analysis
3. Cause effect graphing
56. Which review is normally used to evaluate a product to determine its suitability for
intended use and to identify discrepancies?
Technical Review.
The techniques of equivalence partitioning and boundary value analysis are often applied
to specific situations or inputs. However, if different combinations of inputs result in
different actions being taken, this can be more difficult to show using equivalence
partitioning and boundary value analysis, which tend to be more focused on the user
interface. The other two specification-based techniques, decision tables and state
transition testing are more focused on business logic or business rules. A decision table is
a good way to deal with combinations of things (e.g. inputs). This technique is sometimes
also referred to as a 'cause-effect' table. The reason for this is that there is an associated
logic diagramming technique called 'cause-effect graphing' which was sometimes used to
help derive the decision table
By testers.
59. Which is the current formal world-wide recognized documentation standard?
60. Which of the following is the review participant who has created the item to be
reviewed?
Author
61. A number of critical bugs are fixed in software. All the bugs are in one module, related
to reports. The test manager decides to do regression testing only on the reports module.
Regression testing should be done on other modules as well because fixing one module
may affect other modules.
62. Why does the boundary value analysis provide good test cases?
Because errors are frequently made during programming of the different cases near the
'edges' of the range of values.
It is led by a trained leader, uses formal entry and exit criteria and checklists.
Because configuration management assures that we know the exact version of the
testware and the test object.
A software development model that illustrates how testing activities integrate with
software development phases
Test coverage measures in some specific way the amount of testing performed by a set of
tests (derived in some other way, e.g. using specification-based techniques). Wherever we
can count things and can tell whether or not each of those things has been tested by some
test, then we can measure coverage.
Because incremental integration has better early defects screening and isolation ability
69. When do we prepare RTM (Requirement traceability matrix), is it before test case
designing or after test case designing?
It would be before test case designing. Requirements should already be traceable from
Review activities since you should have traceability in the Test Plan already. This question
also would depend on the organisation. If the organisations do test after development
started then requirements must be already traceable to their source. To make life simpler
use a tool to manage requirements.
70. What is called the process starting with the terminal modules?
Bottom-up integration
71. During which test activity could faults be found most cost effectively?
DRE=Number of bugs while testing / number of bugs while testing + number of bugs
found by user
75. Which of the following is likely to benefit most from the use of test tools providing test
capture and replay facilities? a) Regression testing b) Integration testing c) System testing
d) User acceptance testing
Regression testing
76. How would you estimate the amount of re-testing likely to be required?
Metrics from previous similar projects and discussions with the development team
77. What studies data flow analysis?
Is it really a test if you put some inputs into some software, but never look to see whether
the software produces the correct result? The essence of testing is to check whether the
software produces the correct result, and to do that, we must compare what the software
produces to what it should produce. A test comparator helps to automate aspects of that
comparison.
81. Who is responsible for document all the issues, problems and open point that were
identified during the review meeting
Scribe
84. 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:
Equivalence partitioning
85. A test manager wants to use the resources available for the automated testing of a
web application. The best choice is Tester, test automater, web specialist, DBA
86. During the testing of a module tester 'X' finds a bug and assigned it to developer. But
developer rejects the same, saying that it's not a bug. What 'X' should do?
Send to the detailed information of the bug encountered and check the reproducibility
87. A type of integration testing in which software elements, hardware elements, or both
are combined all at once into a component or an overall system, rather than in stages.
Big-Bang Testing
88. In practice, which Life Cycle model may have more, fewer or different levels of
development and testing, depending on the project and the software product. For
example, there may be component integration testing after component testing, and
system integration testing after system testing.
V-Model
89. 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.
Equivalence partitioning
90. "This life cycle model is basically driven by schedule and budget risks" This statement
is best suited for…
V-Model
92. The later in the development life cycle a fault is discovered, the more expensive it is to
fix. Why?
The fault has been built into more documentation, code, tests, etc
Test boundary conditions on, below and above the edges of input and output equivalence
classes. For instance, let say a bank application where you can withdraw maximum
Rs.20,000 and a minimum of Rs.100, so in boundary value testing we test only the exact
boundaries, rather than hitting in the middle. That means we test above the maximum
limit and below the minimum limit.
Test Environment
98. What can be thought of as being based on the project plan, but with greater amounts
of detail?
In order to identify and execute the functional requirement of an application from start to
finish "use case" is used and the techniques used to do this is known as "Use Case
Testing"
Bonus!
101. What is the difference between STLC (Software Testing Life Cycle) and SDLC
(Software Development Life Cycle) ?
SDLC deals with developement/coding of the software while STLC deales with validation
and verification of the software
The relationship between test cases and requirements is shown with the help of a
document. This document is known as traceability matrix.
104. What is white box testing and list the types of white box testing?
White box testing technique involves selection of test cases based on an analysis of the
internal structure (Code coverage, branches coverage, paths coverage, condition coverage
etc.) of a component or system. It is also known as Code-Based testing or Structural
testing. Different types of white box testing are
1. Statement Coverage
2. Decision Coverage
Static testing: During Static testing method, the code is not executed and it is performed
using the software documentation.
Dynamic testing: To perform this testing the code is required to be in an executable form.
1. Unit/component/program/module testing
2. Integration testing
3. System testing
4. Acceptance testing
109. What is Integration testing?
Test design, scope, test strategies , approach are various details that Test plan document
consists of.
111. What is the difference between UAT (User Acceptance Testing) and System testing?
System Testing: System testing is finding defects when the system under goes testing as a
whole, it is also known as end to end testing. In such type of testing, the application
undergoes from beginning till the end.
UAT: User Acceptance Testing (UAT) involves running a product through a series of
specific tests which determines whether the product will meet the needs of its users.
112. Mention the difference between Data Driven Testing and Retesting?
Data Driven Testing (DDT): In data driven testing process, application is tested with
multiple test data. Application is tested with different set of values.
113. What are the valuable steps to resolve issues while testing?
114. What is the difference between test scenarios, test cases and test script?
Test Cases: It is a document that contains the steps that has to be executed, it has been
planned earlier.
Test Script: It is written in a programming language and it's a short program used to test
part of functionality of the software system. In other words a written set of steps that
should be performed manually.
Latent defect: This defect is an existing defect in the system which does not cause any
failure as the exact set of conditions has never been met
116. What are the two parameters which can be useful to know the quality of test
execution?
Phantom is a freeware, and is used for windows GUI automation scripting language. It
allows to take control of windows and functions automatically. It can simulate any
combination of key strokes and mouse clicks as well as menus, lists and more.
118. Explain what is Test Deliverables ?
Test Deliverables are set of documents, tools and other components that has to be
developed and maintained in support of testing.
There are different test deliverables at every phase of the software development lifecycle
Before Testing
During Testing
After the Testing
Mutation testing is a technique to identify if a set of test data or test case is useful by
intentionally introducing various code changes (bugs) and retesting with original test
data/ cases to determine if the bugs are detected.
120. What all things you should consider before selecting automation tools for the AUT?
Technical Feasibility
Complexity level
Application stability
Test data
Application size
Re-usability of automated scripts
Execution across environment
b) Backtracking
c) Cause elimination
d) Program slicing
When presence of one defect hides the presence of another defect in the system is known
as fault masking.
Example : If the "Negative Value" cause a firing of unhandled system exception, the
developer will prevent the negative values inpu. This will resolve the issue and hide the
defect of unhandled exception firing.
124. Explain what is Test Plan ? What are the information that should be covered in Test
Plan ?
A test plan can be defined as a document describing the scope, approach, resources and
schedule of testing activities and a test plan should cover the following details.
Test Strategy
Test Objective
Exit/Suspension Criteria
Resource Planning
Test Deliverables
125. How you can eliminate the product risk in your project ?
To eliminate product risk in your project, there is simple yet crucial step that can reduce
the product risk in your project.
126. What are the common risk that leads to the project failure?
127. On what basis you can arrive to an estimation for your project?
Task Member
Analyze software requirement specification All the members
129. Explain what is testing type and what are the commonly used testing type ?
130. While monitoring your project what all things you have to consider ?
132. What does a typical test report contains? What are the benefits of test reports?
Project Information
Test Objective
Test Summary
Defect
Management review is also referred as Software Quality Assurance or SQA. SQA focusses
more on the software process rather than the software work products. It is a set of
activities designed to make sure that the project manager follows the standard process.
SQA helps test manager to benchmark the project against the set standards.
134. What are the best practices for software quality assurance?
Continuous Improvement
Documentation
Tool Usage
Metrics
Responsibility by team members
Experienced SQA auditors
RTM is prepared before test case designing. Requirements should be traceable from
review activities.
Both stubs and drivers are part of incremental testing. In incremental testing there are
two approaches namely bottom up and top down approach. Drivers are used in bottom
up testing and stub is used for top down approach. In order to test the main module, stub
is used, whuich is a dummy code or program .
138. What are the step you would follow once you find the defect?
139. Explain what is "Test Plan Driven" or "Key Word Driven" method of testing?
This technique uses the actual test case document developed by testers using a spread
sheet containing special "key Words". The key words control the processing.
LCSAJ stands for 'linear code sequence and jump'. It consists of the following three items
c) The target line to which control flow is transferred at the end of the linear sequence
The variation of regression testing is represented as N+1. In this technique the testing is
performed in multiple cycles in which errors found in test cycle 'N' are resolved and re-
tested in test cycle N+1. The cycle is repeated unless there are no errors found.
143. What is Fuzz testing and when it is used?
Fuzz testing is used to detect security loopholes and coding errors in software. In this
technique random data is added to the system in attempt to crash the system. If
vulnerability persists, a tool called fuzz tester is used to determine potential causes. This
technique is more useful for bigger projects but only detects major fault.
144. Mention what are the main advantages of statement coverage metric of software
testing?
a) It does not require processing source code and can be applied directly to object code
b) Bugs are distributed evenly through code, due to which percentage of executable
statements covered reflects the percentage of faults discovered
a) If characters in new string > characters in previous string. None of the characters
should get truncated
b) If characters in new string< characters in previous string. Junk characters should not
be added
d) String should be replaced only for the first occurrence of the string
146. How will you handle a conflict amogst your team members ?
149. Mention what is the difference between a "defect" and a "failure" in software
testing?
In simple terms when a defect reaches the end customer it is called a failure while the
defect is identified internally and resolved then it is referred as defect.
150. Explain how to test documents in a project that span across the software
development lifecycle?
The project span across the software development lifecycle in following manner
Central/Project test plan: It is the main test plan that outlines the complete test
strategy of the project. This plan is used till the end of the software development
lifecycle
Acceptance test plan: This document begins during the requirement phase and is
completed at final delivery
System test plan: This plan starts during the design plan and proceeds until the end
of the project
Integration and Unit test plan: Both these test plans start during the execution
phase and last until the final delivery
151. Explain which test cases are written first black boxes or white boxes?
Black box test cases are written first as to write black box test cases; it requires project
plan and requirement document all these documents are easily available at the beginning
of the project. While writing white box test cases requires more architectural
understanding and is not available at the start of the project.
152. Explain what is the difference between latent and masked defects?
Latent defect: A latent defect is an existing defect that has not caused a failure
because the sets of conditions were never met
Masked defect: It is an existing defect that has not caused a failure because
another defect has prevented that part of the code from being executed
154. Mention what are the different types of test coverage techniques?
Different types of test coverage techniques include
Statement Coverage: It verifies that each line of source code has been executed
and tested
Decision Coverage: It ensures that every decision in the source code is executed
and tested
Path Coverage: It ensures that every possible route through a given part of code is
executed and tested
Breadth testing is a test suite that exercises the full functionality of a product but does not
test features in detail
156. Mention what is the difference between Pilot and Beta testing?
The difference between pilot and beta testing is that pilot testing is actually done using
the product by the group of user before the final deployment and in beta testing we do
not input real data, but it is installed at the end customer to validate if the product can be
used in production.
Code Walk Through is the informal analysis of the program source code to find defects
and verify coding techniques
158. Mention what are the basic components of defect report format?
Project Name
Module Name
Defect detected on
Defect detected by
Defect ID and Name
Snapshot of the defect
Priority and Severity status
Defect resolved by
Defect resolved on
End-to end testing is done after functional testing. The purpose behind doing end-to-end
testing is that
A test harness is configuring a set of tools and test data to test an application in various
conditions, it involves monitoring the output with expected output for correctness.
161. Explain in a testing project what testing activities would you automate?
Test Scenario:
Test scenario is like laying out plans for testing the product, environmental condition,
number of team members required, making test plans, making test cases and what all
features are to be tested for the product. Test scenario is very much dependent on the
product to be tested.
Test scenario is made before the actual testing starts.
Test Case:
Test case is a document which provides the steps to be executed which has been planned
earlier. It also depends on the type of product to be tested. Number of test cases is not
fixed for any product.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Exit Criteria ensures whether testing is completed and the application is ready for release,
like,Test Summary Report
Metrics
Defect Analysis report
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Who will prepare FRS (functional requirement documents)? What is the important of FRS?
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
What is the difference in writing the test cases for Integration testing and system testing?
Integration testing is done at module level when various modules are integrated with
each other to form a system or sub-system. Its main purpose is to ensure that interfaces
between various modules are working properly; i.e. modules which are working
individually are also working correctly together.
From these definitions, it is clear that the purpose of Integration and purpose of System
Testing are different. Therefore, Integration test cases focus more on the interfaces
between modules (interface integrity) - the data transfer and their interaction with each
other. System test cases focus on testing the product as a whole; i.e. whether the
functional, non-functional requirements of the System are met or not. Since System
Testing is the final phase before delivery of the product, System test cases should pinpoint
configuration related errors along with testing for performance, security, reliability etc.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Regression Testing is carried out both manually and automation. The automatic tools are
mainly used for the Regression Testing as this is mainly focused repeatedly testing the
same application for the changes the application gone through for the new functionality,
after fixing the previous bugs, any new changes in the design etc. The regression testing
involves executing the test cases, which we ran for finding the defects. Whenever any
change takes place in the Application we should make sure, the previous functionality is
still available without any break. For this reason one should do the regression testing on
the application by running/executing the previously written test cases.
Suppose in one banking application there is one module ATM Facility. In that ATM facility
when ever we are depositing/withdrawing money it is not showing any conformation
message but actually at the back end it is happening properly with out any mistake means
only missing
Of message. In this case as it is happening properly so there is nothing wrong with the
application but as end user is not getting any conformation message so he/she will be
Confuse for this. So we can consider this issue as HIGH Priority but LOW Severity defect.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Explain Use case diagram. What are the attributes of use cases?
In Use Case Diagrams the whole system is defined as ACTORS, USE CASES and
ASSOCIATIONS, the ACTORS are the external part of the system like users, computer
software & hardware, USECASES is the behavior or functionality of the system when these
ACTORS perform an action, the ASSOCIATIONS are the line drawn to show the connection
between ACTORS and USECASES. One ACTOR can link too many USECASES and one
USECASE can link too many ACTORS.
//////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////
What will be the Test case for ATM Machine & Coffee Machine?
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
A "build" is given by dev team to the test team. A "release" is formal release of the
product to its customers.
A build when tested and certified by the test team is given to the customers as "release".
A "build" can be rejected by test team if any of the tests fail or it does not meet certain
requirements. One release can have several builds associated with it.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
In Big Bang Integration Testing, the individual modules are not integrated until all the
modules are ready. Then they will run to check whether it is performing well.
Defects can be found at the later stage.It would be difficult to find out whether the defect
arouse in Interface or in module.
1.
In Top Down Integration Testing, the high level modules are integrated and tested
first. i.e Testing from main module to sub module. In this type of testing, Stubs are
used as temporary module if a module is not ready for integration testing.
In Bottom Up Integration Testing, the low level modules are integrated and tested first i.e
Testing from sub module to main module. Same like Stubs, here drivers are used as a
temporary module for integration testing.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Masked defect is commonly known as a defect that hides other defects in the system. This
defect is of the kind which is not detected at a given point of time.
It is a type of non-functional testing. Recovery testing is done in order to check how fast
and better the application can recover after it has gone through any type of crash or
hardware failure etc.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Independent path is defined as a path that has at least one edge which has not been
traversed before in any other paths.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Test coverage measures the amount of testing performed by a set of test. Wherever we
can count things and can tell whether or not each of those things has been tested by some
test, then we can measure coverage and is known as test coverage.
The basic coverage measure is where the ‘coverage item’ is whatever we have been able
to count and see whether a test has exercised or used this item.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Requirement Traceability Matrix or RTM captures all requirements proposed by the client
or development team and their traceability in a single document delivered at the
conclusion of the life-cycle. In other words, it is a document that maps and traces user
requirement with test cases. The main purpose of Requirement Traceability Matrix is to
see that all test cases are covered so that no functionality should miss while testing.
Requirement ID
Risks
Requirement Type and Description
Trace to design specification
Unit test cases
Integration test cases
System test cases
User acceptance test cases
Trace to test script
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Negative testing is the process of applying as much creativity as possible and validating
the application against invalid data. This means its intended purpose is to check if the
errors are being shown to the user where it’s supposed to, or handling a bad value more
gracefully.
Example:
Say for example you need to write negative test cases about a pen. The basic motive of
the pen is to be able to write on paper.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Smoke Testing: It is done to make sure if the build we got is testable or not, i.e to check
for the testability of the build also called as "day 0" check. Done at the 'build level'
Sanity Testing: It is done during the release phase to check for the main functionalities
without going deeper. Sometimes also called as subset of regression testing. When no
rigorous regression testing is done to the build, sanity does that part by checking major
functionalities. Done at the 'release level'
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Defect life cycle, also known as Bug Life cycle is the journey of a defect cycle, which a
defect goes through during its lifetime. It varies from organization to organization and also
from project to project as it is governed by the software testing process and also depends
upon the tools used.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
Concurrent testing is also known as multi-user testing, performed to identify the defects
in an application when multiple users login to the application.
It helps in identifying and measuring the problems in system parameters such as response
time, throughput, locks/dead locks or any other issues associated with concurrency.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
The following are the most common types of performance testing for Web applications.
Performance
To determine or validate speed, scalability, and/or stability.
test
Load test To verify application behavior under normal and peak load conditions.
To determine or validate an application’s behavior when it is pushed
Stress test
beyond normal or peak load conditions.
To determine how many users and/or transactions a given system will
Capacity test
support and still meet performance goals.
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
What are High level test-cases. How will you write high-level test-cases for an switch ?
How will you write high level test cases for web application and desktop application ?
High Level Test Cases:- These test cases define the functionality of a software/product in a
broader way without going into deep functionality. Like if we have to write high level test
cases for login functionality we'll test that 'User should be able to login success full with
valid credentials'.
Advantages :-Its advantage is that a tester is not bound to follow the test cases step by
step and thus it gives a chance to explore more edge cases. This also increases the chance
to find new bugs.
Disadvantages:- Its disadvantage is that its not sure that all scenarios are covered and its
difficult for an inexperienced tester to work with these test cases.
Low Level Test cases:-These test cases define the functionality of a software/product in
deep way. These test cases generally include details like 'Excepted Result', 'Test Data',etc.
Like if we have to write low level test case for login functionality then we'll describe UI of
the login page(user name & password text boxes, Save, Forget password link), URL of the
login page, login with proper test data(valid credentials).
Advantages:-Its advantages is that a tester is unlikely to miss bugs and also its easy for an
inexperienced tester to work with these test cases as he can easily get the desired results
by following steps.
Disadvantages:- Its a tedious to executes these test cases again and again and tester may
not find job challenges
http://www.softwaretestinghelp.com/what-is-negative-testing/
http://istqbexamcertification.com/what-is-test-coverage-in-software-testing-its-advantages-and-disadvantages/
x path in selenium
how to convert into id , css value and link value into xpath
Locaters in selenium