0% found this document useful (0 votes)
17 views

Interview Questions

The document discusses various topics related to software quality assurance (SQA) including: 1) The difference between QA and software testing is that QA monitors the development process while testing ensures the functionality meets requirements. 2) SQA teams face challenges with automating tests like mastering tools, reusing scripts, and automating complex cases. 3) SQA engineer roles include writing code, reviewing code, testing, and release management.

Uploaded by

Fizza Naeem
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views

Interview Questions

The document discusses various topics related to software quality assurance (SQA) including: 1) The difference between QA and software testing is that QA monitors the development process while testing ensures the functionality meets requirements. 2) SQA teams face challenges with automating tests like mastering tools, reusing scripts, and automating complex cases. 3) SQA engineer roles include writing code, reviewing code, testing, and release management.

Uploaded by

Fizza Naeem
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 15

1) What is the difference between the QA and software testing?

The role of QA (Quality Assurance) is to monitor the quality of the “process” used to
produce the software. While the software testing, is the process of ensuring the
functionality of final product meets the user’s requirement.

2) What are the automation challenges that SQA (Software Quality Assurance) team faces while
testing?

 Mastering the automation tool


 Reusability of Automation script
 Adaptability of test case for automation
 Automating complex test cases.

3) List out the roles of Software Quality Assurance engineer?


A software quality assurance engineer tasks may include following things amongst
others

 Writing source code


 Software design
 Control of source code
 Reviewing code
 Change management
 Configuration management
 Integration of software
 Program testing
 Release management process

4) List out the software quality practices through the software development cycle?
Software quality practices includes

 Review the requirements before starting the development phase


 Code Review
 Write comprehensive test cases
 Session based testing
 Risk based testing
 Prioritize bug based on usage
 Form a dedicated security and performance testing team
 Run a regression cycle
 Perform sanity tests on production
 Simulate customer accounts on production
 Include software QA Test Reports

5) Explain what is the rule of a “Test Driven Development”?


The rule of a Test Driven Development is to prepare test cases before writing the
actual code. Which means you are actually be writing code for the tests before you
write code for the application.

6) Mention what are the types of documents in SQA?


The types of documents in SQA are

 Requirement Document
 Test Metrics
 Test cases and Test plan
 Task distribution flow chart
 Transaction Mix
 User profiles
 Test log
 Test incident report
 Test summary report

7) Explain what should your QA documents include?


QA testing document should include

 List the number of defects detected as per severity level


 Explain each requirement or business function in detail
 Inspection reports
 Configurations
 Test plans and test cases
 Bug reports
 User manuals
 Prepare separate reports for managers and users

8) Explain what is MR and what information does MR consists of?


MR stands for Modification Request also referred as Defect report. It is written for
reporting errors/problems/suggestions in the software.

9) What should the Software QA document include?


Software QA document should include

 Specifications
 Designs
 Business rules
 Configurations
 Code changes
 Test plans
 Test cases
 Bug reports
 User manuals, etc

10) Mention how validation activities should be conducted?


Validation activities should be conducted by following techniques

 Hire third party independent verification and validation


 Assign internal staff members that are not involved in validation and
verification activities
 Independent evaluation

 Prioritize bug based on usage


 Form a dedicated security and performance testing team
 Run a regression cycle
 Perform sanity tests on production
 Simulate customer accounts on production
 Include software QA Test Reports
11) What is SDLC?
SDLC (Software Development Life Cycle) is a systematic process for developing
software to ensure the quality and correctness of the software built. It is a short
form of the Software Development Life Cycle process that aims to produce high-
quality software which meets customer expectations.

The development should be complete in the pre-defined time frame and cost. This
life cycle consists of a detailed plan which explains how to plan, build, and
maintain specific software.

12) What are the best practices for writing test cases?
Write test cases from the end user’s perspective:

 Write test steps simply and easily so that anyone can follow them easily
 Make the test cases reusable
 Set the given priority
 You should describe the test case, test data, expected results, preconditions,
and postconditions.
 Write invalid test cases apart from valid test cases
 Follow all the proper naming conventions
 Review the test cases and update them if necessary.

13) What does the test strategy include?


The test strategy includes an introduction, resource, scope and schedule for test
activities, test tools, test priorities, test planning and the types of test that has to
be performed.

14) What is Testware?


Testware is test artifacts like test cases, test data, test plans needed to design and
execute a test.
15) What is the difference between build and release?
Build: It is a number given to Installable software that is given to the testing team
by the development team.

Release: It is a number given to Installable software that is handed over to the


customer by the tester or developer.

16) Mention the different types of software testing?

 Unit testing
 Integration testing and regression testing
 Shakeout testing
 Smoke testing
 Functional testing
 Performance testing
 White box and Black box testing
 Alpha and Beta testing
 Load testing and stress testing
 System testing

17) What are the contents of test plans and test cases?

 Testing objectives
 Testing scope
 Testing the frame
 The environment
 Reason for testing
 The criteria for entrance and exit
 Deliverables
 Risk factors

18) What are important points you need to remember while considering while writing Test Cases?
Here are few vital points that you should be considered while writing Test Cases:

 Before beginning to write the test cases, you must clearly understand the
client’s needs.
 You should include every requirement in the form of test cases, and nothing
should be left out.
 All functional and non-functional requirements should include a UI interface,
and compatibility must be covered.
 Test cases should be evaluated continuously to avoid any repetition or
redundancy.
 Priority is also very important factor that should be set for test cases while
writing.
 Test cases can also be built Sprint so that the tester and the developer help
you analyze the product’s quality based on test case execution.
 The structure of test cases must be easily understood and must be written in
simple language.

19) What is Test case?


Test case is a specific condition to check against the Application Under Test. It has
information of test steps, prerequisites, test environment, and outputs.

20) What is configuration management?


It is a process to control and document any changes made during the life of a
project. Release control, Change control and Revision control are the important
aspects of configuration management.

21) What is Functional Testing?


Functional Testing is a software testing method that helps you to validate the
software system against the functional requirements/specifications.

22) What is the purpose of Functional Testing?


The main purpose of Functional tests is to test each function of the software
application by offering appropriate input and verifying the output against the
Functional requirements.

23) What are the important steps that are covered in Functional Testing?
Functional Testing is done by following steps:
Step 1) Requirements specified by the user or organization are studied, then clear
all the doubts and queries.
Step 2) Based on the specified requirements, test cases are designed by keeping in
mind all the test scenarios that must be covered for all test cases.
Step 3) Identify all test data required to check the system’s functionality and
determine the input.
Step 4) Determine the expected output based on the input values and
functionality.
Step 5) After this tester execute all test cases to check whether they are performing
well or not
Step 6) Compare the outcome with the expected output and determine the
system’s defect rate and accuracy.

24) What is the difference between functional and non-functional testing?

Functional Non-functional testing


Functional testing is performed before non-functional Non-functional testing is always perform
testing. functional testing.
It is based on customers’ requirements. It is mainly focuses on customers’ expec
It helps to validate the behavior of the application. It helps to validate the performance of th
It describes what the product does. It describes how the product works.

25) What are the different Test Levels?


There are four test levels:

 Integration testing: Integration Testing is defined as a software testing


method where software modules are integrated logically and tested as one
group.
 System testing: System Testing is a level of testing which validates the
complete and fully integrated software product.
 Acceptance testing: Acceptance Testing (UAT) is a type of testing performed
by the end-user or the client to verify/accept the software system before
moving the software application to the production environment.
 Unit/component/program/module testing: It uses for testing all the
components and modules under test

26) When to Do Smoke Testing?


Smoke is a testing method performed on the system after receiving the build. This
type of testing method checks for the critical path and not the functionality to
ensure that the build is accepted for further testing or it should be rejected in case
of a broken system. Smoke Testing also checks the system’s critical path, without
which the application is blocked.

27) Why do we need to conduct end-to-end Testing?


End-to-end testing is a method that allows you to execute tests that cover all the
possible flow of the testing application from start to finish basis. This software
testing approach helps you to discover software dependencies and assert that the
correct input is passed between different software modules and sub-systems.

28) What do you understand by Sanity testing?


Sanity testing is conducted after receiving the build to check the new
functionality/defects that need to be fixed. In this type of testing, the goal is to
check the functionality, determine whether the bug is fixed, and test the effect of
the fixed bug on the application under Test.

29) What is Integration testing?


Integration testing is a software testing method that combines and tests individual
application components. It is generally performed after unit and functional
Testing.

30) What is the meaning of End-To-End Testing?


End To End testing is a method of testing an application that helps you to ensure
whether it is acting as expected to be working. That should be used to test the
application flow from the start to the end.

This testing method aims to examine the entire system’s flow. It also confirms that
the data integrity is maintained between the different system components and the
systems.

31) What is Verification and Validation in Software Testing?

 Verification: It is a static analysis technique. In this method, Testing is done


without executing the code. Examples Reviews, Inspection, and
walkthrough.
 Validation: It is a dynamic analysis method where Testing is conducted by
executing the code. Examples of Functional and non-functional testing
techniques.

32) How is validation different from verification?

erification Validation
evaluates whether the software meets the It evaluates whether the specification captures the
pecification or not. customer’s needs or not.
erification is a type of static Testing. Validation is a type of dynamic Testing.
does not need you to execute the code. It requires code execution.

33) What are the various methods of Testing?


Three methods for software testing are:

 Black-box Testing: Black box testing technique is based solely on


requirements and specifications. This strategy requires no knowledge of
internal paths, structures, or the software being tested.
 White box testing is a testing method based on internal paths, code
structures, and the software being tested.

34) Explain what is the difference between Regression testing and Retesting?
Retesting is carried out to check the defects fixes, while regression testing is
performed to check whether the defect fix have any impact on other functionality.

35) What is Non-functional Testing?


Non-functional testing is a software testing approach to checking non-functional
aspects like performance, usability, and reliability of a software application. It is
mainly designed to test the readiness of a system according to nonfunctional
parameters, which are never addressed by functional Testing.
36) What are the advantages of Manual Testing?
Here are the advantages of using the manual testing method:

 It is a method when compared to automated Testing


 Analysis of the product from the point of view of the end-user is possible
only with manual Testing
 You can do GUI testing more accurately with the help of manual Testing, as
visual accessibility and preferences are difficult to automate
 Manual testing is easy to learn for new people who have just entered into
Testing
 It is suitable for short-term projects when test scripts are not going to be
repeated and reused
 It is best suited when the project is at the early development stages

37) What is RTM?


Requirement Traceability Matrix is a full form of RTM. It is a tool that helps the
tester helps you to keep track of requirement coverage over the testing process.
Once the requirement document is received. It is created based on the
requirements and maintained until the specific system or application is released.

38) Explain what is traceability matrix?


A test matrix is used to map test scripts to requirements.

39) What is the use of a Traceability Matrix?


Traceability matrix shows the relationship between test cases and requirements
with the help of one document.

40) What are the significant differences between Test Matrix and Traceability Matrix?
Here are the significant differences between Test Matrix and Traceability Matrix:
 Test Matrix: The test matrix helps you to capture actual quality, effort, the
plan, resources, and time needed to capture all phases of software testing
 Traceability Matrix: This Matrix involves mapping between test cases and
customer requirements.

41) What are the main components of the defect report format?
Here are the basic components of the defect report format:

 Name of the Project


 Name of the Module
 Defect detected
 Defect ID
 Name of the Defect
 Screenshot of the defect
 Severity and Priority status
 Defect resolved by and resolved on

42) What is bug leakage and bug release?


Bug release is when software or an application is handed over to the testing team
knowing that the defect is present in a release. During this the priority and severity
of bug is low, as bug can be removed before the final handover.

Bug leakage is something, when the bug is discovered by the end users or
customer, and not detected by the testing team while testing the software.

43) Explain what is Bug triage?


A bug triage is a process to

 Ensure bug report completeness


 Assign and analyze the bug
 Assigning bug to proper bug owner
 Adjust bug severity properly
 Set appropriate bug priority
44) What is Bug/Defect Life Cycle?
The bug life cycle is also called the Defect life cycle. In the Software Development
process, every bug has a life cycle. The bug needs to go through the life cycle to be
closed. The life cycle of a bug depends on the tools (QC, JIRA, etc.) and the
organizational process used.
45) What is Test Closure?
It is a document that summarizes all the tests conducted during the SDLC
(Software development life cycle). It offers a detailed analysis of the removed bugs
and errors found.

Test Clouse also contains the aggregate no. of experiments, total numbers of
experiments executed, add numbers of bugs that are not settled, the total number
of bugs rejected, etc.

46) What is a Bug report?


In the software testing process, the software tester records their finding,
observations, findings, and other helpful information to the developers or the
management. This data is part of the test record known as a bug report.

Bug report provides the following advantages:

 Understand the problem


 Steps to reproduce this problem
 The environment and the specific condition under the Test happen
 The resolution if/ and when the developers fix the problem

47) Explain the steps for Bug Cycle?

 Once the bug is identified by the tester, it is assigned to the development


manager in open status
 If the bug is a valid defect the development team will fix it.
 If it is not a valid defect, the defect will be ignored and marked as rejected
 The next step will be to check whether it is in scope. If the bug is not the part
of the current release then the defects are postponed
 If the defect or bug is raised earlier then the tester will assign a DUPLICATE
status
 When bug is assigned to developer to fix, it will be given a IN-PROGRESS
status
 Once the defect is repaired, the status will change to FIXED at the end the
tester will give CLOSED status if it passes the final test.

48) What is Agile testing and what is the importance of Agile testing?
Agile testing is software testing, is testing using Agile Methodology. The importance
of this testing is that, unlike normal testing process, this testing does not wait for
the development team to complete the coding first and then doing testing. The
coding and testing both goes simultaneously. It requires continuous customer
interaction.

49) What is the Difference Between SDLC and STLC?


 Here are some differences between SDLC and STLC

SDLC STLC
The objective of SDLC life cycle is to complete the
successful development of the software, including The only objective of the STLC phase is
Testing and other phases.
In STLC, the QA team analyzes requirem
In SDLC, the BA(Business Analyst) gathers the
a test plan and conduct functional and
requirements and create Development Plan
documents.
In this life cycle, the development team creates the high In this life cycle, the test analyst creates
and low-level design plans Integration Test Plan
The actual code is developed, and actual work takes The software testing team prepares the
place as per the design documents. environment and executes them

You might also like