Software Tester Basics Interview Question and Answers
Software Tester Basics Interview Question and Answers
1 What is SDLC?
SDLC or the Software Development Life Cycle is a process that produces software with the
highest quality and lowest cost in the shortest time possible. SDLC provides a well-structured
flow of phases that help an organization to quickly produce high-quality software which is well-
tested and ready for production use.
2 Why SDLC?
Here, are prime reasons why SDLC is important for developing a software system.
• It offers a basis for project planning, scheduling, and estimating
• Provides a framework for a standard set of activities and deliverables
• It is a mechanism for project tracking and control
• Increases visibility of project planning to all involved stakeholders of the development
• process
• Increased and enhance development speed
• Improved client relations
• Helps you to decrease project risk and project management plan overhead
3 SDLC Phases?
The entire SDLC process divided into the following stages:
• Phase 1: Requirement collection and analysis
• Phase 2: Feasibility study:
• Phase 3: Design:
• Phase 4: Coding:
• Phase 5: Testing:
• Phase 6: Installation/Deployment:
• Phase 7: Maintenance:
3.1 Requirements Gathering/Analysis.
This is a process with much communication taking place between stakeholders, end
users and the project team. Meetings with managers, stake holders and users are held
in order to determine the requirements like; who is going to use the system? How will
they use the system? What data should be input into the system? What data should be
output by the system? These are general questions that get answered during a
requirement gathering phase. The QA engineer playing the role to configure the
requirements using requirements traceability matrix (RTM).
3.2 Design:
In this phase the software design is prepared from the requirement
specifications which were studied in the first phase. System Design helps in specifying
hardware and system requirements and also help in defining overall system
architecture. In this phase the QA Engineers comes up with the Test strategy, where they
mention what to test, how to test.
3.3 Implementation / Coding:
Upon receiving system design documents, the work is divided in modules/units and
actual coding is started. Since, in this phase the code is produced so it is the main focus
for the developer. This is the longest phase of SDLC. In this phase the QA Engineers
comes up with the Test Environment setup and test Case Documentation.
3.4 Testing:
After the code is developed it is tested against the requirements to make sure that the
product is actually solving the needs addressed and gathered during the requirements
phase. During this phase all types of like unit testing, integration testing, Smoke Testing,
functional testing, Sanity Testing, system testing, acceptance testing is done as well
as non-functional testing is also done.
3.5 Deployment: After successful testing the product is delivered / deployed to the customer
for their use. As soon as the product is given to the customers, they will first do the beta
testing/User
Spiral Model: The spiral model is a risk-driven process model. This SDLC model helps the team
to adopt elements of one or more process models like a waterfall, incremental, waterfall, etc.
This model adopts the best features of the prototyping model and the waterfall model. The
spiral methodology is a combination of rapid prototyping and concurrency in design and
development activities.
Prototyping Model: Prototyping model is a software development model in which prototype is
built, tested, and reworked until an acceptable prototype is achieved. It also creates base to
produce the final system or software. It works best in scenarios where the project's
requirements are not known in detail. It is an iterative, trial and error method which takes place
between developer and client.
7 What is STLC?
It is the testing process which is executed in systematic and planned manner. In STLC
process, different activities are carried out to improve the quality of the product.
Following steps are involved in Software Testing Life Cycle (STLC).
1. Requirement Analysis (RTM)
2. Test Planning (Test Strategy, Test Plan, Test Bed Creation)
3. Test Case Development (Test Procedures, Test Scenarios, Test Cases)
4. Environment Setup
5. Test Execution
6. Defect Reporting
8 What are Quality Assurance and Quality Control?
Quality Assurance:
Quality Assurance involves in process-oriented activities. It ensures the prevention of
defects in the process used to make Software Application. So the defects don’t arise when
the Software Application is being developed. The process is:
• Plan - Organization should plan and establish the process related objectives and
determine the processes that are required to deliver a high-Quality end product.
• Do - Development and testing of Processes and also "do" changes in the processes
• Check - Monitoring of processes, modify the processes, and check whether it meets the
predetermined objectives
• Act - A Quality Assurance tester should implement actions that are necessary to achieve
improvements in the processes.
Quality Control:
Quality Control involves in product-oriented activities. It executes the program or code to
identify the defects in the Software Application.
In other words, validation is concerned with checking that the system will meet the
customer’s actual needs. validation is an extremely subjective process. Validation
includes activities such as requirements modelling, prototyping and user evaluation.
While verification is concerned with whether the system is well-engineered, error-free,
and so on. Verification will help to determine whether the software is of high quality, but
it will not ensure that the system is useful. Verification includes all the activities associated
with the producing high-quality software: testing, inspection, design analysis,
specification analysis, and so on. It is a relatively objective process.
24 What is RTM?
Requirements Traceability Matrix (RTM) is used to trace the requirements to the tests
that are needed to verify whether the requirements are fulfilled. Requirement
Traceability Matrix AKA Traceability Matrix or Cross Reference Matrix.
Which Parameters to include in Requirement Traceability Matrix?
• Requirement ID
• Requirement Type and Description
• Test Cases with Status
55 What is a Defect?
The variation between the actual results and expected results is known as a defect. If a
developer finds an issue and corrects it by himself in the development phase, then it’s
called a defect.
56 What is an Error?
We can’t compile or run a program due to a coding mistake in a program. If a developer
unable to successfully compile or run a program, then they call it as an error.
57 What is a Failure?
Once the product is deployed and customers find any issues then they call the product
as a failure product. After release, if an end user finds an issue, then that particular issue
is called as a failure.
Describes what the product does Describes how the product works