Basic Manual Testing Interview Questions

Download as pdf or txt
Download as pdf or txt
You are on page 1of 51

Basic Manual Testing Interview Questions

Q1. How does quality control differ from quality assurance?

Quality Control vs Quality Assurance


Quality Control Quality Assurance
Quality control is a product-oriented
Quality assurance is a process-oriented
approach of running a program to
approach that focuses on making sure
determine if it has any defects, as well as
that the methods, techniques, and
making sure that the software meets all of
processes used to create quality
the requirements put forth by the
deliverables are applied correctly.
stakeholders
Q2. What is Software Testing?

Software Testing is a process used to identify the correctness, completeness, and


quality of developed software. It includes a series of activities conducted with the
intent of finding errors in software so that it could be corrected before the product is
released to the market.

Q3. Why is Software Testing Required?

Software testing is a mandatory process that guarantees that the software product is
safe and good enough to be released to the market. Here are some compelling
reasons to prove testing is needed:

 It points out the defects and errors that were made during the development
phases.
 Reduces the coding cycles by identifying issues at the initial stage of the
development.
 Ensures that software application requires lower maintenance cost and results
in more accurate, consistent and reliable results.
 Testing ensures that the customer finds the organization reliable and their
satisfaction in the application is maintained.
 Makes sure that software is bug-free and the quality of the product meets the
market standard.
 Ensures that the application doesn’t result in any failures.

Q4. What are the two main categories of software testing?

Software testing is a huge domain but it can be broadly categorized into two areas
such as :

 Manual Testing – This is the oldest type of software testing where the testers
manually execute test cases without using any test automation tools. It means
the software application is tested manually by QA testers.
 Automation Testing – This is the process of using the assistance of tools,
scripts, and software to perform test cases by repeating pre-defined actions.
Test Automation focuses on replacing manual human activity with systems or
devices that enhance efficiency.

Q5. What is quality control? Is it similar to Quality Assurance?

Quality control is a product-oriented approach of running a program to determine if it


has any defects, as well as making sure that the software meets all of the
requirements put forth by the stakeholders.

Q6. What different types of manual testing are there?

Different types of manual testing are;


o Black Box Testing
o White Box Testing
o Unit Testing
o System Testing
o Integration Testing
o Acceptance Testing

Q7. Explain the difference between alpha testing and beta testing.

 Alpha Testing – It is a type of software testing performed to identify bugs


before releasing the product to real users or to the public. Alpha Testing is a
type of user acceptance testing.
 Beta Testing – It is performed by real users of the software application in a
real environment. Beta Testing is also a type of user acceptance testing.

Q8. What are the different levels of manual testing?

Four levels of manual testing are:

 Unit testing – It is a way of testing the smallest piece of code referred to as


a unit that can be logically isolated in a system. It is mainly focused on the
functional correctness of the standalone module.
 Integration Testing – It is a level of software testing where individual units
are combined and tested to verify if they are working as they intend to when
integrated. The main aim here is to test the interface between the modules.
 System Testing – In system testing all the components of the software are
tested as a whole in order to ensure that the overall product meets the
requirements specified. There are dozens of types of system testing, including
usability testing, regression testing, and functional testing.

User Acceptance Testing – The final level, acceptance testing, or UAT (user
acceptance testing), determines whether or not the software is ready to be released.

Q9. What is a testbed in manual testing?


The testbed is an environment configured for testing. It is an environment used for
testing an application, including the hardware as well as any software needed to run
the program to be tested. It consists of hardware, software, network configuration, an
application under test, other related software.

Q10. Explain the procedure for manual testing?

The manual testing process comprises the following steps:

 Planning and Control


 Analysis and Design
 Implementation and Execution
 Evaluating exit criteria and Reporting
 Test Closure activities

How to do :

1. Requirement Analysis: FSd Documents : such as requirements,


design specifications, product risk analysis, architecture and
interfaces

2. Test Plan Creation: Scope , Resources people ,to Schedule test


analysis, design tasks, test implementation, execution and
evaluation.

3. Test case Creation: test Cases

4. Test case Execution :

5. Defect Logging

6. Defect Fix & Re-Verification

 Analyze requirements from the software requirement specification document


 Create a clear test plan
 Write test cases that cover all the requirements defined in the document
 Get test cases reviewed by the QA lead
 Execute test cases and detect any bugs
 Report bugs, if any, and once fixed, run the failed tests again to re-verify the
fixes
Q11. What is the test case?

A test case is a document that has a set of conditions or actions that are performed
on the software application in order to verify the expected functionality of the feature.

Test cases describe a specific idea that is to be tested, without detailing the exact
steps to be taken or data to be used. For example, in a test case, you document
something like ‘Test if coupons can be applied on actual price‘.

Q12. What is API testing?

API testing is a type of software testing where application programming interfaces


(APIs) are tested to determine if they meet expectations for functionality, reliability,
performance, and security. In simple terms, API testing is intended to reveal bugs,
inconsistencies or deviations from the expected behavior of an API.

Commonly, applications have three separate layers:

 Presentation Layer or user interface


 Business Layer or application user interface for business logic processing
 Database Layer for modeling and manipulating data

API testing is performed at the most critical layer of software architecture, the
Business Layer.

Q13. What’s the difference between verification and validation in


testing?

Verification Validation
It is a static analysis technique. Here, It is a dynamic analysis technique where
testing is done without executing the testing is done by executing the code.
code. Examples include – Reviews, Examples include functional and non-
Inspection, and walkthrough. functional testing techniques.
Q14. What’s the difference between a bug and a defect?

A bug is a just fault in the software that’s detected during testing time. A defect is a
variance between expected results and actual results, detected by the developer
after the product goes live.

Q15.What are the advantages of manual testing?

Merits of manual testing are:

 It is a cheaper way of testing when compared to automated testing


 Analysis of product from the point of view of the end-user is possible only with
manual testing
 GUI testing can be done more accurately with the help of manual testing as
visual accessibility and preferences are difficult to automate
 East to learn for new people who have just entered into testing
 It is highly suitable for short-term projects when test-scripts are not going to
be repeated and reused for thousands of times
 Best suited when the project is at the early stages of its development
 Highly reliable, since automated tests can contain errors and missed bugs

Q16.What are the drawbacks of manual testing?

De-merits of manual testing are:

 Highly susceptible to human error and are risky


 Test types like load testing and performance testing are not possible manually
 Regression tests are really time-consuming if they are done manually
 Scope of manual testing is very limited when compared to automation testing
 Not suitable in very large organizations and time-bounded projects
 The cost adds up, so, it’s more expensive to test manually in the long run

Q17. What’s the role of documentation in Manual Testing?


Documentation plays a critical role in achieving
effective software testing. Details like requirement specifications, designs, business
rules, inspection reports, configurations, code changes, test plans, test cases, bug
reports, user manuals, etc. should all be documented.

Documenting the test cases will facilitate you to estimate the testing effort you will
need along with test coverage and tracking and tracing requirement. Some
commonly applied documentation artifacts associated with software testing are:

1. Test Plan
2. Test Scenario
3. Test Case
4. Traceability Matrix

With this, we have completed basic questions based on manual testing. In the next
part of this Manual Testing Interview Questions article, let’s discuss advanced level
questions related to manual testing.

Advanced Level Manual Testing Interview Questions


Q18. What is the difference between manual testing and automation
testing?

Manual Testing Automation Testing


In manual testing, the accuracy, and Automated testing, on the other hand, is
reliability of test cases are low, as manual more reliable as tools and scripts are
tests are more prone to human error. used to perform tests.
The time required for manual testing is
The time required is comparatively low as
high as human resources perform all the
software tool execute the tests
tasks.
In manual testing investment cost is low,
In automation testing investment cost
but Return of Investment(ROI) is low as
and Return of Investment, both are high.
well.
Manual testing is preferred when the test You can use test automation
cases are run once or twice. Also suitable for Regression Testing, Performance
for Exploratory, Usability and Adhoc Testing, Load Testing or highly
Testing. repeatable functional test cases
Allows for human observation to find out
As there is no human observation
any glitches. Therefore manual testing
involved, there is no guarantee of
helps in improving the customer
positive customer experience.
experience.
Q19. When should you opt for manual testing over automation
testing?

There are a lot of cases when manual testing is best suited over automation testing,
like:

 Short-time projects: Automated tests are aimed at saving time and


resources yet it takes time and resources to design and maintain them. For
example, if you are building a small promotional website, it can be much more
efficient to rely on manual testing.
 Ad-hoc Testing: In ad-hoc testing, there is no specific approach. Ad-hoc
testing is a totally unplanned method of testing where the understanding and
insight of the tester is the only important factor. This can be achieved using
manual testing.
 Exploratory Test: This type of testing requires the tester’s knowledge,
experience, analytical, logical skills, creativity, and intuition. So human
involvement is important in exploratory testing.
 Usability Testing: When performing usability testing, the tester needs to
measure how user-friendly, efficient, or convenient the software or product is
for the end-users. Human observation is the most important factor, so manual
testing sounds seems more appropriate.

Q20. What are the phases involved in Software Testing Life Cycle?

The different phases involved in the software testing life cycle are:

Phases Explanation
QA team understands the requirement in terms of what
Requirement Analysis
we will testing & figure out the testable requirements.
In this phase, the test strategy is defined. Objective &
Test Planning
the scope of the project is determined.
Here, detailed test cases are defined and
Test Case Development developed. The testing team also prepares the test data
for testing.
It is a setup of software and hardware for the testing
Test Environment Setup
teams to execute test cases.
It is the process of executing the code and comparing
Test Execution
the expected and actual results.
It involves calling out the testing team member meeting
& evaluating cycle completion criteria based on test
Test Cycle Closure
coverage, quality, cost, time, critical business objectives,
and software.
In case you are facing any challenges with these Manual Testing interview
questions, please comment on your problems in the section below.

Q21. What is the difference between a bug, a defect and an error?


Bug – A bug is a fault in the software that’s detected during testing time. They occur
because of some coding error and leads a program to malfunction. They may also
lead to a functional issue in the product. These are fatal errors that could block a
functionality, results in a crash, or cause performance bottlenecks

Defect – A defect is a variance between expected results and actual results,


detected by the developer after the product goes live. The defect is an error found
AFTER the application goes into production. In simple terms, it refers to several
troubles with the software products, with its external behavior, or with its internal
features.

Error – An error is a mistake, misunderstanding, or misconception, on the part of a


software developer. The category of developers includes software engineers,
programmers, analysts, and testers. For example, a developer may misunderstand a
design notation, or a programmer might type a variable name incorrectly – leads to
an error. An error normally arises in software, it leads to a change the functionality of
the program.

Q22. What makes a good test engineer?

A software test engineer is a professional who determines how to create a process


that would best test a particular product in the software industry.

 A good test engineer should have a ‘test to break’ attitude, an ability to take
the point of view of the customer
 Strong desire for quality and attention to minute details
 Tact and diplomacy to maintain a cooperative relationship with developers
 Ability to communicate with both technical (developers) and non-technical
(customers, management) people
 Prior experience in the software development industry is always a plus
 Ability to judge the situations and make important decisions to test high-risk
areas of an application when time is limited

Q23.What is regression testing? When to apply it?

“Testing of a previously tested program to ensure that defects have not been
introduced or uncovered in unchanged areas of the software, as a result of the
changes made is called Regression Testing.”
A regression test is a system-wide test whose main purpose is to ensure that a small
change in one part of the system does not break existing functionality elsewhere in
the system. It is recommended to perform regression testing on the occurrence of
the following events:

 When new functionalities are added


 In case of change requirements
 When there is a defect fix
 When there are performance issues
 In case of environment changes
 When there is a patch fix

Q24. What is the difference between system testing and integration


testing?

System Testing Integration Testing


System Testing tests the software
Integration testing tests the interface
application as a whole to check if the
between modules of the software
system is compliant with the user
application
requirements
Involves both functional and non- Only functional testing is performed to
functional testings like sanity, usability, check whether the two modules when
performance, stress an load combined give the right outcome
It is high-level testing performed after It is low-level testing performed after unit
integration testing testing
Q25. Explain the defect life cycle.
A defect life cycle is a process in which a defect goes through various phases
during its whole lifetime. The cycle starts when a defect is found and ends when a
defect is closed, after ensuring it’s not reproduced. Bug or defect life cycle includes
the steps as shown in the below figure.

If you wish to learn in-depth about Bug Life Cycle then you can refer this article
on Software Testing Tutorial.

Q26. What is the test harness?

A test harness is the gathering of software and test information arranged to test a
program unit by running it under changing conditions like stress, load, data-driven,
and monitoring its behavior and outputs. Test Harness contains two main parts:

– A Test Execution Engine


– Test script repository

Q27. What is test closure?

Test Closure is a document which gives a summary of all the tests conducted during
the software development life cycle and also gives a detailed analysis of the bugs
removed and errors found. This memo contains the aggregate no. of experiments,
total no. of experiments executed, total no. of imperfections discovered, add total no.
of imperfections settled, total no. of bugs not settled, total no of bugs rejected and so
forth.

Q28. What is the difference between Positive and Negative Testing?

Positive Testing Negative Testing


Positive testing determines that your Negative testing ensures that your
application works as expected. If an error application can gracefully handle invalid
is encountered during positive testing, the input or unexpected user behavior
test fails
Testers apply as much creativity as
In this testing, tester always check for an
possible and validating the application
only valid set of values
against invalid data
Q29. Define what is a critical bug.

A critical bug is a bug that has got the tendency to affect a majority of the
functionality of the given application. It means a large piece of functionality or major
system component is completely broken and there is no workaround to move further.
Application cannot be distributed to the end client unless the critical bug is
addressed.

Q30. What is the pesticide paradox? How to overcome it?

According to pesticide paradox, if the same tests are repeated over and over again,
eventually the same test cases will no longer find new bugs. Developers will be extra
careful in those places where testers found more defects and might not look into
other areas. Methods to prevent pesticide paradox:

 To write a whole new set of test cases to exercise different parts of the
software.
 To prepare new test cases and add them to the existing test cases.

Using these methods, it’s possible to find more defects in the area where defect
numbers dropped.

In case you are facing any challenges with these Manual Testing interview
questions, please comment on your problems in the section below.

Q31. What is Defect Cascading in Software Testing?

Defect Cascading is the process of triggering other defects in the application. When
a defect goes unnoticed while testing, it invokes other defects. As a result, multiple
defects crop up in the later stages of development. If defect cascading continues to
affect other features in the application, identifying the affected feature becomes
challenging. You may make different test cases to solve this issue, even then it is
difficult and time-consuming.

Q32. What is the term ‘quality’ mean when testing?

In general, quality software is reasonably bug-free, delivered on time and within


budget, meets requirements and/or expectations, and is maintainable. But again
‘quality’ is a subjective term. It will depend on who the ‘customer’ is and their overall
influence in the scheme of things. For example, each type of ‘customer’ will have
their own slant on ‘quality’ – the accounting department might define quality in terms
of profits while an end-user might define quality as user-friendly and bug-free.

Q33. What is black box testing, and what are the various techniques?
Black-Box Testing, also known as specification-based testing, analyses the
functionality of a software/application without knowing much about the internal
structure/design of the item. The purpose of this testing is to check the functionality
of the system as a whole to make sure that it works correctly and meets user
demands. Various black-box testing techniques are:

 Equivalence Partitioning
 Boundary Value Analysis
 Decision Table Based Technique
 Cause-effect Graphing
 Use Case Testing

Q34. What is white box testing, and what are the various techniques?

White-Box Testing also known as structure-based testing, requires a profound


knowledge of the code as it includes testing of some structural part of the
application. The purpose of this testing is to enhance security, check the flow of
inputs/outputs through application and to improve design and usability. Various
white-box testing techniques are:

 Statement Coverage
 Decision Coverage
 Condition Coverage
 Multiple Condition Coverage

Q35. What are the Experience-based testing techniques?

Experienced-based testing is all about discovery, investigation, and learning. The


tester constantly studies and analyzes the product and accordingly applies his skills,
traits, and experience to develop test strategies and test cases to perform necessary
testing. Various experience-based testing techniques are:

 Exploratory Testing
 Error Guessing

Q36.What is a top-down and bottom-up approach in testing?

Top-Down – Testing happens from top to bottom. That is, high-level modules are
tested first, and after that low-level modules. Lastly, the low-level modules are
incorporated into a high-level state to guarantee the framework is working as it is
expected to.

Bottom-Up – Testing happens from base levels to high-up levels. The lowest level
modules are tested first and afterward high-level state modules. Lastly, the high-level
state modules are coordinated to a low level to guarantee the framework is filling in
as it has been proposed to.

Q37. What is the difference between smoke testing and sanity


testing?
Features Smoke Testing Sanity Testing
Tests are done on builds that
Tests are executed on initial
System Builds have passed smoke tests &
builds of software product
rounds of regression tests
To measure the stability of the To evaluate rationality &
Motive of
newly created build to face off originality of the functionalities of
Testing
more rigorous testing software builds
Subset of? Is a subset of acceptance testing Is a subset of regression testing
Involves documentation and Doesn’t emphasize any sort of
Documentation
scripting work documentation
Shallow & wide approach to
Narrow & deep approach
include all the major
Test Coverage involving detailed testing of
functionalities without going too
functionalities and features
deep
Executed by developers or
Performed By? Executed by testers
testers
Q38. What is the difference between static testing and dynamic
testing?

Static Testing Dynamic Testing


Static Testing is a white box testing Dynamic testing includes the process of
technique, it includes the process of execution of code and is done at the later
exploring the records to recognize the stage of the software development
imperfections in the very early stages of lifecycle. It validates and approves the
SDLC. output with the expected results.
Static Testing is implemented at the Dynamic testing starts during the
verification stage. validation stage.
Static testing is performed before the Dynamic testing is performed after the
code deployment. code deployment
The code error detection and execution of
the program is not a concern in this type Execution of code is necessary for
of testing. dynamic testing.

With this, we have completed theory questions. In the next part of this Manual
Testing Interview Questions article, let’s discuss some real-world scenario-based
questions.

Real-World Based Manual Testing Interview


Questions
Q39. How will you determine when to stop testing?

Deciding when to stop testing can be quite difficult. Many modern software
applications are so complex and run in such an interdependent environment, that
complete testing can never be done. Some common factors in deciding when to stop
testing are:
 Deadlines (release deadlines, testing deadlines, etc.)
 Test cases completed with certain percentage passed
 When the test budget is depleted
 Coverage of code or functionality or requirements reaches a specified point
 Bug rate falls below a certain level
 When Beta or alpha testing period ends

Q40. What if the software is so buggy it can’t really be tested at all?

Often testers encounter a bug that can’t be resolved at all. In such situations, the
best bet is for testers to go through the process of reporting whatever bugs or
blocking-type problems initially show up, with the focus being on critical bugs. Since
this type of problem can cause severe problems such as insufficient unit testing or
insufficient integration testing, poor design, improper build or release procedures, etc
managers should be notified and provided with some documentation as evidence of
the problem.

In case you are facing any challenges with these Manual Testing interview
questions, please comment on your problems in the section below.

Q41. How you test a product if the requirements are yet to freeze?

It’s possible that a requirement stack is not available for a piece of product. It might
take serious effort to determine if an application has significant unexpected
functionality, and it would indicate deeper problems in the software development
process. If the functionality isn’t necessary to the purpose of the application, it should
be removed. Else, create a test plan based on the assumptions made about the
product. But make sure you get all assumptions well documented in the test plan.

Q42. What if an organization is growing so fast that fixed testing


processes are impossible? What to do in such situations?

This is a very common problem in the software industry, especially considering the
new technologies that are being incorporated when developing the product. There is
no easy solution in this situation, you could:
• Hire good and skilled people
• Management should ‘ruthlessly prioritize’ quality issues and maintain focus on the
customer
• Everyone in the organization should be clear on what ‘quality’ means to the end-
user

Q43. How do you know the code has met specifications?

‘Good code’ is code that works, that is bug-free, and is readable and maintainable.
Most organizations have coding ‘standards’ that all developers are supposed to
adhere to, but everyone has different ideas about what’s best, or what is too many or
too few rules. There are a lot of tools like traceability matrix which ensures the
requirements are mapped to the test cases. And when the execution of all test cases
finishes with success, it indicates that the code has met the requirement.
Q44. What are the cases when you’ll consider to choose automated
testing over manual testing?

Automated testing can be considered over manual testing during the following
situations:

 When tests require periodic execution


 Tests include repetitive steps
 Tests need to be executed in a standard runtime environment
 When you have less time to complete the testing phase
 When there is a lot of code that needs to be repeatedly tested
 Reports are required for every execution

Q45. What is ‘configuration management’?

Every high-functioning organization has a “master plan” that details how they are
supposed to operate and accomplish tasks. Software development and testing are
no different. Software configuration management (SCM) is a set of processes,
policies, and tools that organize, control, coordinate, and track:

 code
 documentation
 problems
 change requests
 designs and tools
 compilers and libraries

Q46. Is it true that we can do system testing at any stage?

In system testing, all the components of the software are tested as a whole in order
to ensure that the overall product meets the requirements specified. So, no. The
system testing must start only if all units are in place and are working properly.
System testing usually happens before the UAT (User Acceptance Testing).

Q47. What are some best practices that you should follow when
writing test cases?

Few guidelines that you need to follow while writing test cases are:

 Prioritize which test cases to write based on the project timelines and the risk
factors of your application.
 Remember the 80/20 rule. To achieve the best coverage, 20% of your tests
should cover 80% of your application.
 Don’t try to test cases in one attempt instead improvise them as you progress.
 List down your test cases and classify them based on business scenarios and
functionality.
 Make sure test cases are modular and test case steps are as granular as
possible.
 Write test cases in such a way that others can understand them easily &
modify if required.
 Always keep end-users’ requirements in the back of your mind because
ultimately the software designed is for the customer
 Actively use a test management tool to manage stable release cycle.
 Monitor your test cases regularly. Write unique test cases and remove
irrelevant & duplicate test cases.

Q48. Why is it that the boundary value analysis provides good test
cases?

The reason why boundary value analysis provides good test cases is that usually, a
greater number of errors occur at the boundaries rather than in the center of the
input domain for a test.

In boundary value analysis technique test cases are designed to include values at
the boundaries. If the input is within the boundary value, it is considered ‘Positive
testing.’ If the input is outside of the boundary value, it is considered ‘Negative
testing.’ It includes maximum, minimum, inside or outside edge, typical values or
error values.

Let’s suppose you are testing for an input box that accepts numbers from ’01 to 10′.

Using the boundary value analysis we can define three classes of test cases:

 Test cases with test data exactly as the input boundaries of input: 1 and 10 (in
this case)
 Values just below the extreme edges of input domains: 0 and 9
 Test data with values just above the extreme edges of input domains: 2 and
11

So the boundary values would be 0, 1, 2 and 9, 10, 11.

Q49.Why is it impossible to test a program thoroughly or in other


terms 100% bug-free?

It is impossible to build a software product which is 100% bug-free. You can just
minimize the error, flaw, failure or fault in a computer program or system that causes
it to produce an incorrect or unexpected result.

Here are the two principal reasons that make it impossible to test a program entirely.

 Software specifications can be subjective and can lead to different


interpretations.
 A software program might require too many inputs, too many outputs, and too
many path combinations to test.

Q50. Can automation testing replace manual testing?


Automation testing isn’t a replacement for manual testing. No matter how good
automated tests are, you cannot automate everything. Manual tests play an
important role in software development and come in handy whenever you have a
case where you cannot use automation. Automated and manual testing each have
their own strengths and weaknesses. Manual testing helps us to understand the
entire problem and explore other angles of tests with more flexibility. On the other
hand, automated testing helps save time in the long run by accomplishing a large
number of surface-level tests in a short time.

That’s it, folks! With this, we have reached the end of this ‘Manual Testing Interview
Questions’. You could also take a look at Automation Testing Interview
Questions while you’re at it.

If you found this article relevant, check out the Software Testing Training by
Edureka, a trusted online learning company with a network of more
than 250,000 satisfied learners spread across the globe.

Got a question for us? Please mention it in the comments section on this “Manual
Testing Interview Questions” and we will get back to you.

Basic Software Testing Interview Questions for


Freshers
1. What is Exploratory Testing?
Exploratory testing is a hands-on approach in which testers are involved in
minimum planning and maximum test execution. The planning involves the
creation of a test charter, a short declaration of the scope of a short (1 to 2
hour) time-boxed test effort, the objectives and possible approaches to be
used. The test design and test execution activities are performed in parallel
typically without formally documenting the test conditions, test cases or test
scripts. This does not mean that other, more formal testing techniques will
not be used. For example, the tester may decide to use boundary value
analysis but will think through and test the most important boundary values
without necessarily writing them down. Some notes will be written during
the exploratory-testing session so that a report can be produced afterward.

2. What is “use case testing”?


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.”

3. What is the difference between the STLC (Software


Testing Life Cycle) and SDLC (Software Development
Life Cycle)?
SDLC deals with development/coding of the software while STLC deales
with validation and verification of the software

4. What is traceability matrix?


The relationship between test cases and requirements is shown with the
help of a document. This document is known as a traceability matrix.

5. What is Equivalence partitioning testing?


Equivalence partitioning testing is a software testing technique which
divides the application input test data into each partition at least once of
equivalent data from which test cases can be derived. By this testing
method, it reduces the time required for software testing.

6. 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

7. In white box testing, what do you verify?


In white box testing following steps are verified.

1. Verify the security holes in the code


2. Verify the incomplete or broken paths in the code
3. Verify the flow of structure according to the document specification
4. Verify the expected outputs
5. Verify all conditional loops in the code to check the complete
functionality of the application
6. Verify the line by line coding and cover 100% testing

8. 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

9. What is the difference between static and dynamic


testing?
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.

10. What are verification and validation?


Verification is a process of evaluating software at the development phase.
It helps you to decide whether the product of a given application satisfies
the specified requirements. Validation is the process of evaluating software
at the after the development process and to check whether it meets the
customer requirements.

11. What are the different test levels?


There are four test levels

1. Unit/component/program/module testing
2. Integration testing
3. System testing
4. Acceptance testing

12. What is Integration testing?


Integration testing is a level of software testing process, where individual
units of an application are combined and tested. It is usually performed
after unit and functional testing.

13. What Test Plans consists of?


Test design, scope, test strategies, approach are various details that Test
plan document consists of.

1. Test case identifier


2. Scope
3. Features to be tested
4. Features not to be tested
5. Test strategy & Test approach
6. Test deliverables
7. Responsibilities
8. Staffing and training
9. Risk and Contingencies

14. What is the difference between UAT (User


Acceptance Testing) and System testing?
System Testing: System testing is finding defects when the system
undergoes testing as a whole; it is also known as end-to-end testing. In
such type of testing, the application suffers 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.

15. Mention the difference between Data Driven Testing


and Retesting?
Retesting: It is a process of checking bugs that are actioned by the
development team to verify that they are fixed.

Data Driven Testing (DDT): In data driven testing process, the application
is tested with multiple test data. The application is tested with a different set
of values.

Advanced Manual Software Testing Interview


Questions for 3/5/10 Years Experience
16. What are the valuable steps to resolve issues while
testing?
 Record: Log and handle any problems which have happened
 Report: Report the issues to higher level manager
 Control: Define the issue management process

17. What is the difference between test scenarios, test


cases, and test script?
Difference between test scenarios and test cases is that

Test Scenarios: A Test Scenario is any functionality that can be tested. It


is also called Test Condition or Test Possibility.

Test Cases: It is a document that contains the steps that have 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 the functionality of the software system. In
other words a written set of steps that should be performed manually.

18. What is Latent defect?


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

19. What are the two parameters which can be useful to


know the quality of test execution?
To know the quality of test execution, we can use two parameters

 Defect reject ratio


 Defect leakage ratio
Parameters for quality of test execution
20. What is the function of the software testing tool
“phantom”?
Phantom is a freeware and is used for windows GUI automation scripting
language. It allows us to take control of windows and functions
automatically. It can simulate any combination of keystrokes and mouse
clicks as well as menus, lists and more.

21. Explain what Test Deliverables is?


Test Deliverables are a set of documents, tools and other components that
have 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

22. What is mutation 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.
23. 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

24. How will you conduct Risk Analysis?


For the risk analysis following steps need to be implemented

1. Finding the score of the risk


2. Making a profile for the risk
3. Changing the risk properties
4. Deploy the resources of that test risk
5. Making a database of risk

25. What are the categories of debugging?


Categories for debugging

1. Brute force debugging


2. Backtracking
3. Cause elimination
4. Program Slicing
5. Fault tree analysis

26. What is fault masking explain with example?


When the presence of one defect hides the presence of another defect in
the system, it is known as fault masking.

Example: If the “Negative Value” cause a firing of unhandled system


exception, the developer will prevent the negative values input. This will
resolve the issue and hide the defect of unhandled exception firing.

27. Explain what Test Plan is? What is 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

28. How can you eliminate the product risk in your


project?
It helps you to eliminate product risk in your project, and there is a simple
yet crucial step that can reduce the product risk in your project.

 Investigate the specification documents


 Have discussions about the project with all stakeholders including the
developer
 As a real user walk around the website

29. What is the common risk that leads to project failure?


The common risk that leads to a project failure are

 Not having enough human resource


 Testing Environment may not be set up properly
 Limited Budget
 Time Limitations

30. On what basis you can arrive at an estimation for


your project?
To estimate your project, you have to consider the following points

 Divide the whole project into the smallest tasks


 Allocate each task to team members
 Estimate the effort required to complete each task
 Validate the estimation

31. Explain how you would allocate a task to team


members?
Task Member
 Analyze software requirement
 All the members
specification

 Create the test specification  Tester/Test Analyst


 Build up the test environment  Test administrator

 Tester, a Test
 Execute the test cases
administrator

 Report defects  Tester

32. Explain what is testing type and what are the


commonly used testing type?
To get an expected test outcome, a standard procedure is followed which is
referred to as Testing Type.

Commonly used testing types are

 Unit Testing: Test the smallest code of an application


 API Testing: Testing API created for the application
 Integration Testing: Individual software modules are combined and
tested
 System Testing: Complete testing of the system
 Install/UnInstall Testing: Testing done from the point of
client/customer view
 Agile Testing: Testing through Agile technique

33. While monitoring your project what all things you


have to consider?
The things that have to be taken in considerations are

 Is your project on schedule


 Are you over budget
 Are you working towards the same career goal
 Have you got enough resources
 Are there any warning signs of impending problems
 Is there any pressure from management to complete the project
sooner

34. What are the common mistakes which create issues?


 Matching resources to wrong projects
 Test manager lack of skills
 Not listening to others
 Poor Scheduling
 Underestimating
 Ignoring the small problems
 Not following the process

35. What does a typical test report contain? What are the
benefits of test reports?
A test report contains the following things:

 Project Information
 Test Objective
 Test Summary
 Defect

The benefits of test reports are:

 Current status of project and quality of product are informed


 If required, stakeholder and customer can take corrective action
 A final document helps to decide whether the product is ready for
release

36. What is test management review and why it is


important?
Management review is also referred to 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.

37. What are the best practices for software quality


assurance?
The best practices for an effective SQA implementation is

 Continuous Improvement
 Documentation
 Tool Usage
 Metrics
 Responsibility by team members
 Experienced SQA auditors

38. When is RTM (Requirement Traceability Matrix)


prepared?
RTM is prepared before test case designing. Requirements should be
traceable from review activities.
39. What is the difference between Test matrix and
Traceability matrix?
Test Matrix: Test matrix is used to capture actual quality, effort, the plan,
resources and time required to capture all phases of software testing

Traceability Matrix: Mapping between test cases and customer


requirements is known as Traceability Matrix

40. In manual testing what are stubs and drivers?


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 a top-
down approach. In order to test the main module, the stub is used, which is
a dummy code or program.

41. What is the step you would follow once you find the
defect?
Once a defect is found you would follow the step

a) Recreate the defect

b) Attach the screenshot

c) Log the defect

42. 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 spreadsheet containing special “key Words”. The key words control
the processing.

43. What is the DFD (Data Flow Diagram)?


When a “flow of data” through an information system is graphically
represented, then it is known as Data Flow Diagram. It is also used for the
visualization of data processing.

44. Explain what LCSAJ is?


LCSAJ stands for ‘linear code sequence and jump.’ It consists of the
following three items

a) Start of the linear sequence of executable statements


b) End of the linear sequence

c) The target line to which control flow is transferred at the end of the linear
sequence

45. Explain what N+1 testing is?


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.

46. 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 an
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 a major fault.

47. Mention what the main advantages of statement


coverage metric of software testing are?
The benefit of statement coverage metric is that

a) It does not require processing source code and can be applied directly to
object code

b) Bugs are distributed evenly through the code, due to which percentage
of executable statements covered reflects the percentage of faults
discovered

48. How to generate test cases for “replace a string”


method?
a) If characters in new string > characters in the previous string. None of
the characters should get truncated

b) If characters in new string< characters in the previous string. Junk


characters should not be added

c) Spaces after and before the string should not be deleted

d) String should be replaced only for the first occurrence of the string
49. How will you handle a conflict amongst your team
members?
 I will talk individually to each person and note their concerns
 I will find a solution to the common problems raised by team
members
 I will hold a team meeting, reveal the solution and ask people to co-
operate

50. Mention what are the categories of defects?


Mainly there are three defect categories

 Wrong: When a requirement is implemented incorrectly


 Missing: It is a variance from the specification, an indication that a
specification was not implemented or a requirement of the customer
is not met
 Extra: A requirement incorporated into the product that was not given
by the end customer. It is considered as a defect because it is a
variance from the existing requirements

51. Explain how does a test coverage tool work?


The code coverage testing tool runs parallel while performing testing on the
actual product. The code coverage tool monitors the executed statements
of the source code. When the final testing is done, we get a complete
report of the pending statements and also get the coverage percentage.

52. Mention what the difference between a “defect” and a


“failure” in software testing is?
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 to as a defect.

53. Explain how to test documents in a project that span


across the software development lifecycle?
The project span across the software development lifecycle in the 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 the 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

54. 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.

55. Explain what the difference between latent and


masked defects is?
 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

56. Mention what bottom-up testing is?


Bottom-up testing is an approach to integration testing, where the lowest
level components are tested first, then used to facilitate the testing of
higher level components. The process is repeated until the component at
the top of the hierarchy is tested.

57. Mention what the different types of test coverage


techniques are?
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 the code is executed and tested

58. Mention what the meaning of breath testing is?


Breath testing is a test suite that exercises the full functionality of a product
but does not test features in detail
59. Explain what the meaning of Code Walk Through is?
Code Walk Through is the informal analysis of the program source code to
find defects and verify coding techniques

60. Mention what the basic components of defect report


format are?
The essential components of defect report format include

 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

61. Mention what the purpose behind doing end-to-end


testing is?
End-to-end testing is done after functional testing. The purpose behind
doing end-to-end testing is that

 To validate the software requirements and integration with external


interfaces
 Testing application in real-world environment scenario
 Testing of interaction between application and database

62. Explain what it means by test harness?


A test harness is configuring a set of tools and test data to test an
application in various conditions, and it involves monitoring the output with
expected output for correctness.

63. Explain in a testing project what testing activities


would you automate?
In testing project testing activities, you would automate are

 Tests that need to be run for every build of the application


 Tests that use multiple data for the same set of actions
 Identical tests that need to be executed using different browsers
 Mission critical pages
 A transaction with pages that do not change in a short time

64. What is the MAIN benefit of designing tests early in


the life cycle?
It helps prevent defects from being introduced into the code.

65. What is risk-based testing?


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.

66. 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.

67. What is the purpose of exit criteria?


The purpose of exit criteria is to define when a test level is completed.

68. What determines the level of risk?


The likelihood of an adverse event and the impact of the event determine
the level of risk.

69. When is used Decision table testing?


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.

70. Why we use decision tables?


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

71. What is the MAIN objective when reviewing a


software deliverable?
To identify defects in any software work product.

72. Which of the following defines the expected results of


a test? Test case specification or test design
specification.
Test case specification defines the expected results of a test.

73. What is the benefit of test independence?


It avoids author bias in defining effective tests.

74. As part of which test process do you determine the


exit criteria?
The exit criteria are determined on the bases of ‘Test Planning’.

75. What is Alpha testing?


Pre-release testing by end user representatives at the developer’s site.

76. What is beta testing?


Testing performed by potential customers at their own locations.

77. Mention what the difference between Pilot and Beta


testing is?
The difference between a pilot and beta testing is that pilot testing is
actually done using the product by the group of users 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.

78. Given the following fragment of code, how many tests


are required for 100% decision coverage?
if width > length
thenbiggest_dimension = width
if height > width
thenbiggest_dimension = height
end_if
elsebiggest_dimension = length
if height > length
thenbiggest_dimension = height
end_if
end_if
4

79. 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?
None, existing test cases can be used.

80. 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

Learn More About Testing Tools here

81. We use the output of the requirement analysis, the


requirement specification as the input for writing …
User Acceptance Test Cases

82. 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
83. 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

84. What is component 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 simply. A stub is
called from the software component to be tested; a driver calls a
component to be tested.

Here is an awesome video on Unit Testing

85. What is functional system testing?


Testing the end to end functionality of the system as a whole is defined as
a functional system testing.

86. What are the benefits of Independent Testing?


Independent testers are unbiased and identify different defects at the same
time.

87. 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.

88. What are the different Methodologies in Agile


Development Model?
There are currently seven different agile methodologies that I am aware of:

1. Extreme Programming (XP)


2. Scrum
3. Lean Software Development
4. Feature-Driven Development
5. Agile Unified Process
6. Crystal
7. Dynamic Systems Development Model (DSDM)

89. 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.

90. What is typically the MOST important reason to use


risk to drive testing efforts?
Because testing everything is not feasible.

91. What is random/monkey testing? When is it used?


Random testing is 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
analyzed 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.

92. 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.

93. 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.

94. 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.

95. What are the phases of a formal review?


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.

96. What is the role of moderator in the review process?


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.

97. What is an equivalence partition (also known as an


equivalence class)?
An input or output ranges of values such that only one value in the range
becomes a test case.

98. When should configuration management procedures


be implemented?
During test planning.
99. A Type of Functional Testing, which investigates the
functions relating to the detection of threats, such as
virus from malicious outsiders?
Security Testing

100. Testing wherein we subject the target of the test, to


varying workloads to measure and evaluate the
performance behaviors and the ability of the target and
the test to continue to function properly under these
different workloads?
Load Testing

101. Testing activity which is performed to expose


defects in the interfaces and in the interaction between
integrated components is?
Integration Level Testing

102. What are the Structure-based (white-box) testing


techniques?
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.

103. When should “Regression Testing” be performed?


After the software has changed or when the environment has
changed Regression testing should be performed.

104. What is negative and positive testing?


A negative test is when you put in an invalid input and receives errors.
While positive testing is when you put in a valid input and expect some
action to be completed in accordance with the specification.

105. What is the purpose of a test completion criterion?


The purpose of test completion criterion is to determine when to stop
testing

106. What can static analysis NOT find?


For example memory leaks.

107. What is the difference between re-testing and


regression testing?
Re-testing ensures the original fault has been removed; regression testing
looks for unexpected side effects.

108. What are the Experience-based testing techniques?


In experience-based techniques, people’s knowledge, skills, and
background are a prime contributor to the test conditions and test cases.
The experience of both technical and business people is important, as they
bring different perspectives to the test analysis and design process. Due to
previous experience with similar systems, they may have insights into what
could go wrong, which is very useful for testing.

109. What type of review requires formal entry and exit


criteria, including metrics?
Inspection

110. Could reviews or inspections be considered part of


testing?
Yes, because both help detects faults and improves quality.

111. An input field takes the year of birth between 1900


and 2004 what the boundary values for testing this field
are?
1899,1900,2004,2005

112. 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
113. To test a function, what has to write a programmer,
which calls the function to be tested and pass test data.
Driver

114. What is the one Key reason why developers have


difficulty testing their own work?
Lack of Objectivity

115. “How much testing is enough?”


The answer depends on the risk for your industry, contract and special
requirements.

116. When should testing be stopped?


It depends on the risks for the system being tested. There are some criteria
based on which you can stop testing.

1. Deadlines (Testing, Release)


2. Test budget has been depleted
3. Bug rate fall below a certain level
4. Test cases completed with certain percentage passed
5. Alpha or beta periods for testing ends
6. Coverage of code, functionality or requirements are met to a
specified point

117. Which of the following is the primary purpose of the


integration strategy for integration testing in the small?
The primary purpose of the integration strategy is to specify which modules
to combine when and how many at once.

118. What are semi-random test cases?


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.

119. 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

THEN Print “Large”

ENDIF

IF p > 50

THEN Print “p Large”

ENDIF

1 test for statement coverage, 2 for branch coverage

120. Which review is normally used to evaluate a product


to determine its suitability for the intended use and to
identify discrepancies?
Technical Review.

121. Faults found should be originally documented by


whom?
By testers.

122. Which is the current formal world-wide recognized


documentation standard?
There isn’t one.

123. Which of the following is the review participant who


has created the item to be reviewed?
Author

124. 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.

125. 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.

126. What makes an inspection different from other


review types?
It is led by a trained leader, uses formal entry and exit criteria and
checklists.

127. Why can be tester dependent on configuration


management?
Because configuration management assures that we know the exact
version of the testware and the test object.

128. What is V-Model?


A software development model that illustrates how testing activities
integrate with software development phases

129. What is maintenance testing?


Triggered by modifications, migration or retirement of existing software

130. What is test coverage?


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.

131. Why is incremental integration preferred over “big


bang” integration?
Because incremental integration has better early defects screening and
isolation ability

132. What is called the process starting with the terminal


modules?
Bottom-up integration

133. During which test activity could fault be found most


cost-effectively?
During test planning
134. The purpose of the requirement phase is
To freeze requirements, to understand user needs, to define the scope of
testing

135. Why we split testing into distinct stages?


We split testing into distinct stages because of the following reasons,

1. Each test stage has a different purpose


2. It is easier to manage to test in stages
3. We can run different test into different environments
4. Performance and quality of the testing is improved using phased
testing

136. What is DRE?


In order to measure test effectiveness, a powerful metric is used to
measure test effectiveness known as DRE (Defect Removal Efficiency)
From this metric we would know how many bugs we have found from the
set of test cases. The formula for calculating DRE is

DRE=Number of bugs while a testing/number of bugs while testing +


number of bugs found by a user

137. 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

138. How would you estimate the amount of re-testing


likely to be required?
Metrics from previous similar projects and discussions with the
development team

139. What studies data flow analysis?


The use of data on paths through the code.

140. What is failure?


Failure is a departure from specified behavior.

141. What are Test comparators?


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, and we must compare what the software produces to what it
should produce. A test comparator helps to automate aspects of that
comparison.

142. Who is responsible for document all the issues,


problems and open point that were identified during the
review meeting
Scribe

143. What is the main purpose of Informal review


An inexpensive way to get some benefit

144. What is the purpose of test design technique?


Identifying test conditions and Identifying test cases

145. 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

146. 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

147. During the testing of a module tester, ‘X’ found a


bug and assigned it to a developer. But developer rejects
the same, saying that it’s not a bug. What ‘X’ should do?
Send the detailed information of the bug encountered and check the
reproducibility

148. 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

149. 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

150. 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

151. “This life cycle model is driven by schedule and


budget risks” This statement is best suited for.
V-Model

152. In which order should tests be run?


The most important one must be tested first

153. 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

154. What is Coverage measurement?


It is a partial measure of test thoroughness.

155. What is Boundary value testing?


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.

156. What does COTS represent?


Commercial Off The Shelf.

157. The purpose of which is to allow specific tests to be


carried out on a system or network that resembles as
closely as possible the environment where the item
under test will be used upon release?
Test Environment

158. What can be thought of as being based on the


project plan, but with greater amounts of detail?
Phase Test Plan

159. What is Rapid Application Development?


Rapid Application Development (RAD) is formally a parallel development of
functions and subsequent integration. Components/functions are
developed in parallel as if they were mini projects, the developments are
time-boxed, delivered, and then assembled into a working prototype. This
can very quickly give the customer something to see and use and to
provide feedback regarding the delivery and their requirements. Rapid
change and development of the product are possible using this
methodology. However the product specification will need to be developed
for the product at some point, and the project will need to be placed under
more formal controls before going into production.

Top 15 Automation Testing Interview


Questions & Answers (2022)
1) What is Automation testing?

Automation Testing is a technique using an automation tool to write and


execute tester’s test scripts and cases.

The main goal of Automation Testing is to reduce the number of test cases
to be run manually and not eliminate Manual Testing altogether.
2) When will you automate a test?

Automation in preferred in following cases

 Repetitive Tasks
 Smoke and Sanity Tests
 Test with multiple data set
 Regression test cases

Usually, the decision is based on the ROI (Return on Investment)

3) When will you not automate testing?

One should not automate in following cases

 When the Application Under Test changes frequently


 One time test cases
 Adhoc – Random testing

4) What are the steps involved in the Automation Process?

In the automation process, steps involved are

 Selecting the Test tool


 Define scope of automation
 Planning, design, and development
 Test execution
 Maintenance

5) What are the points that are covered while planning phase of
automation?

During planning phase of automation things which must be taken in


concern are

 Selection the “right” Automation tool


 Selection Automation Framework if any
 List of In scope and out of scope items for automation
 Test Environment Setup
 Preparing Grant Chart of Project timelines for test script development
& execution.
 Identify Test Deliverables

6) In what condition we cannot use automation testing for the Agile


method?
Automation testing is not useful for agile methods in following conditions

 When Agile testing always ask for changes in requirements


 When Exhaustive level of documentation is required in Agile
 Only suitable for those regression tests during agile testing like
continuous integration

7) What are the primary features of good automation tool?

 Test Environment support and easy to use


 Good debugging facility
 Robust object identification
 Object and Image testing abilities
 Object identification
 Testing of database
 Support multiple frameworks

8) What are the types of the framework used in software automation


testing?
In software automation testing four types of framework used are

 Data-driven automation framework


 Keyword driven automation framework
 Modular automation framework
 Hybrid automation framework

9) What is the scripting standard while performing automation


testing?

While writing the scripts for automation, you must consider following things,

 Uniform naming convention.


 3 Lines of comments for every 10 lines of code
 Adequate indentation.
 Robust error handling and recovery scenario
 Use of Frameworks wherever possible

10) What are the most popular tools for automation testing?

The most popular test tool for automation testing are

 QTP (HP UFT)


 Rational Robot
 Selenium

11) On what basis you can map the success of automation testing?
By following criteria, the success of automation testing can be mapped

 Defect Detection Ratio


 Automation execution time and time savings to release the product
 Reduction in Labour & other costs

12) Can list out some disadvantages of manual testing?

 Manual Software Testing requires more time and more resources.


 Inaccuracy
 Executing same test case repeatedly is error prone and boring.
 It is impractical to do manual testing on very large projects and time
bounded projects.

13) Tell me what you know about Selenium

Selenium is a free (open source) Test automation library. It is used to


automate Web and Mobile environments. It consists of

1. Selenium IDE (Browser Addon – Record and Playback Tool)


2. Selenium WebDriver
3. Selenium Grid (Distributed Testing)

Selenium supports scripting in languages like Java, C#, Python, Ruby,


PHP, Perl, Javascript.

14) Tell me about QTP

QTP (Quick Test Professional) is now known as HP UFT. It is a commercial


automation tool and supports a very wide range of test environments Web,
Desktop, SAP, Delphi, Net, ActiveX, Flex, Java, Oracle, Mobile,
PeopleSoft, PowerBuilder, Siebel, Stingray, Visual Basic amongst others.

The scripting language is VBScript. The tool gels well with HP ALM (Test
Management Tool) and HP LoadRunner (Performance Testing Tool).

Salient features of QTP include Business Process Testing, keyword driven


framework, XML support, robust checkpoints, test results.

15) Explain what Sikuli is?


Sikuli is a tool that uses “Visual Image Match” method to automate
graphical user interface. All the web elements in Sikuli should be taken as
an image and stored inside the project.

Sikuli is comprised of
 Sikuli Script
 Visual Scripting API for Jython
 Sikuli IDE

Practical uses of Sikuli is that

 It can be used to automate flash websites or objects


 It can automate window based application and anything you see on
screen without using internal API support
 It provides simple API
 It can be easily linked with tools like Selenium
 Desktop application can be automated
 Sikuli offers extensive support to automate flash objects
 To automate desktop, it uses powerful “Visual Match” and Flash
objects
 It can work on any technology-.NET, Java,

16) Mention what is the difference between Selenium and Sikuli?

Sikuli Selenium
 It cannot automate
 It provides extensive support to automate flash objects
video player, audio
 It has simple API
 It has got complica
 It uses a visual match to find elements on the screen.
 It does not have vis
So, we can automate anything we see on the screen
 It can automate on
 It can automate the web as well as windows application
applications
What are the software testing principles?
There are seven principles in software testing:
 Testing shows the presence of defects.
 Exhaustive testing is not possible.
 Early testing.
 Defect clustering.
 Pesticide paradox.
 Testing is context-dependent.
 Absence of errors fallacy.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy