0% found this document useful (0 votes)
115 views34 pages

Imp Questions

Software testing is a process of analyzing software to identify defects and evaluate features against requirements. There are different principles, methods, and types of testing. The document discusses various testing concepts like the software testing life cycle (STLC), test plans, strategies, scenarios, cases, and closure. It also covers different testing techniques like white box, black box, and gray box testing as well as unit, integration, system, functional, smoke, and regression testing. The goal of software testing is to improve quality by detecting defects as early as possible in the development process.

Uploaded by

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

Imp Questions

Software testing is a process of analyzing software to identify defects and evaluate features against requirements. There are different principles, methods, and types of testing. The document discusses various testing concepts like the software testing life cycle (STLC), test plans, strategies, scenarios, cases, and closure. It also covers different testing techniques like white box, black box, and gray box testing as well as unit, integration, system, functional, smoke, and regression testing. The goal of software testing is to improve quality by detecting defects as early as possible in the development process.

Uploaded by

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

INTERVIEW QUESTION _ SOFTWARE TESTING

1. What is Software Testing?


A process of analysing a software item to detect the differences between existing and required
conditions (i.e., defects) and to evaluate the features of the software item.

2. What are the principles of software testing?


2.1 Testing shows presence of defects Software Testing reduces the probability of undiscovered
defects remaining in the software but even if no defects are found, it is not a proof of
correctness.
2.2 Exhaustive testing is impossible If you were testing this Operating system, you would
realize that defects are likely to be found in multi-tasking activity and need to be tested
thoroughly which brings us to our next principal Defect Clustering.
2.3 Early testing Early Testing - Testing should start as early as possible in the Software
Development Life Cycle. So that any defects in the requirements or design phase are captured
in early stages.
2.4 Defect clustering Defect Clustering which states that a small number of modules contain
most of the defects detected. If the same tests are repeated over and over again, eventually the
same test cases will no longer find new bugs.
2.7 Absence of error - Fallacy It is possible that software which is 99% bug-free is still
unusable. This can be the case if the system is tested thoroughly for the wrong requirement.
The absence of Error is a Fallacy i.e., Finding and fixing defects does not help if the system
build is unusable and does not fulfill the user's needs & requirements.

3. 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
1. What is Test Plan Document?

g. 1 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Test plan document is a document which contains the plan for all the testing activities to be
done to deliver a quality product. Test Plan document is derived from the Product Description,
SRS, or Use Case documents for all future activities of the project. It is usually prepared by the
Test Lead or Test Manager

4. What is Test Strategy?


Test Strategy is a high-level document (static document) and usually developed by project
manager. It is a document which captures the approach on how we go about testing the product
and achieve the goals. It is normally derived from the Business Requirement Specification
(BRS). Documents like Test strategy doc is project-based document it can change according to
project domain and requirements.
3. What is Test Suite?
Test Suite is a collection of test cases. The test cases which are intended to test an application.

5. What is Test Scenario?


Test Scenario gives the idea of what we have to test. Test Scenario is like a high-level test
case.

6. What is Test Case?


Test cases are the set of positive and negative executable steps of a test scenario which has a
set of pre-conditions, test data, expected result, post-conditions and actual results.

7. What is Test Closure?


Test Closure is the note prepared before test team formally completes the testing process. This
note contains the total no. of test cases, total no. of test cases executed, total no. of defects
found, total no. of defects fixed, total no. of bugs not fixed, total no of bugs rejected etc.

8. What are the tasks of Test Closure activities in Software Testing?


Test Closure activities fall into four major groups.
Test Completion Check: To ensure all tests should be either run or deliberately skipped and all
known defects should be either fixed, deferred for a future release or accepted as a permanent
restriction.

g. 2 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Test Artifacts handover: Tests and test environments should be handed over to those
responsible for maintenance testing. Known defects accepted or deferred should be
documented and communicated to those who will use and support the use of the system.
Lessons learned: Analysing lessons learned to determine changes needed for future releases
and projects. In retrospective meetings, plans are established to ensure that good practices can
be repeated, and poor practices are not repeated.
Result: Archiving results, logs, reports, and other documents and work products in the CMS
(configuration management system)

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

10. Which Parameters to include in Requirement Traceability Matrix?


• Requirement ID • Requirement Type and Description • Test Cases with Status
Types of Traceability Test Matrix in Software Engineering, traceability matrix can be divided
into three major components as mentioned below:
• Forward traceability: This matrix is used to check whether the project progresses in the
forward desired direction and for the right product. It maps requirements to test cases.
• Backward or reverse traceability: It is used to ensure whether the current product remains on
the right track. It maps test cases to requirements.
• Bi-directional traceability (Forward + Backward): This traceability matrix ensures that all
requirements are covered by test cases. It analyses the impact of a change in requirements
affected by the Defect in a work product and vice versa.

11. Methods & Types of Software Testing


There are 3 methods of software testing.
1) White box 2) Black box 3) Grey Box
1. What is White Box Testing?
White Box Testing is also called as Glass Box, Clear Box, and Structural Testing. It is based
on applications internal code structure. In white-box testing, an internal perspective of the

g. 3 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

system, as well as programming skills, are used to design test cases. This testing usually was
done at the unit level.
2. What is Black Box Testing?
Black Box Testing is a software testing method in which testers evaluate the functionality of
the software under test without looking at the internal code structure. This can be applied to
every level of software testing such as Unit, Integration, System and Acceptance Testing.

3. What is Grey Box Testing?


Grey box is the combination of both White Box and Black Box Testing. The tester who works
on this type of testing needs to have access to design documents. This helps to create better test
cases in this process.

12. There are 3 Types of Software testing (Alpha, Beta, Gamma)


• What is Alpha Testing?
Alpha testing is done by the in-house developers (who developed the software) and testers.
Sometimes alpha testing is done by the client or outsourcing team with the presence of
developers or testers. It has two phases: • In the first phase of alpha testing, the software is
tested by in-house developers. They use debugger software. The goal is to catch bugs quickly.
• In the second phase of alpha testing, the software is handed over to the software QA staff, for
additional testing in an environment that is similar to the intended use.
• What is Beta Testing?
Beta testing is done by a limited number of end users before delivery. Usually, it is done in
the client place.
• What is Gamma Testing?
Gamma testing is done when the software is ready for release with specified requirements. It
is done at the client place. It is done directly by skipping all the in-house testing activities.

13. What is Functional Testing?


In simple words, what the system actually does is functional testing. To verify that each
function of the software application behaves as specified in the requirement document. Testing

g. 4 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

all the functionalities by providing appropriate input to verify whether the actual output is
matching the expected output or not. It falls within the scope of black box testing and the testers
need not concern about the source code of the application.

14. What is Unit/Module Testing?


Unit Testing is also called as Module Testing or Component Testing. It is done to check
whether the individual unit or module of the source code is working properly. It is done by the
developers in the developer’s environment.

15. What is Integration Testing?


Integration Testing is the process of testing the interface between the two software units.
Integration testing is done by three ways. Big Bang Approach, Top-Down Approach, Bottom-
Up Approach.

16. What is System Testing?


Testing the fully integrated application to evaluate the system’s compliance with its specified
requirements is called System Testing End to End testing. Verifying the completed system to
ensure that the application works as intended or not. System testing is carried out by specialist
testers or independent testers. System testing should investigate both functional and non-
functional requirements of the testing.

17. What is Smoke Testing?


smoke Testing is done to make sure if the build we received from the development team is
testable or not. It is also called as “Day 0” check. It is done at the “build level”. It helps not to
waste the testing time to simply testing the whole application when the key features don’t work,
or the key bugs have not been fixed yet.

18. What is Sanity Testing?


Sanity Testing is done during the release phase to check for the main functionalities of the
application without going deeper. It is also called as a subset of Regression testing. It is done
at the “release level”. We perform sanity testing when we don’t have enough time for regression
testing.

g. 5 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

19. What is Regression Testing?


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 components. Usually, we do regression testing in the following
cases:
1. New functionalities are added to the application
2. Change Requirement (In organizations, we call it as CR)
3. Defect Fixing
4. Performance Issue Fix
5. Environment change (E.g., Updating the DB from MySQL to Oracle)

20. What is Retesting Testing?


Retesting is done to make sure that the tests cases which failed in last execution are passed
after the defects are fixed. Retesting is carried out based on the defect fixes. In Retesting, the
cases which are failed earlier can be included to check if the functionality failure in an earlier
build.

21. What is Exploratory Testing?


Usually, this process will be carried out by domain experts. They perform testing just by
exploring the functionalities of the application without having the knowledge of the
requirements.

22. What is Monkey Testing?


Perform abnormal action on the application deliberately in order to verify the stability of the
application.

23. What is User Acceptance Testing / UAT?


It is also known as pre-production testing. This is done by the end users along with the testers
to validate the functionality of the application. After successful acceptance testing. Formal
testing conducted to determine whether an application is developed as per the requirement. It
allows the customer to accept or reject the application. Types of acceptance testing are Alpha,
Beta & Gamma.

g. 6 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

24. What is Positive and Negative Testing?


Positive Testing: It is to determine what system supposed to do. It helps to check whether the
application is justifying the requirements or not.
Negative Testing: It is to determine what system not supposed to do. It helps to find the defects
from the software

25. What is Non-Functional Testing?


In simple words, how well the system performs is non-functionality testing. Nonfunctional
testing refers to various aspects of the software such as performance, load, stress, scalability,
security, compatibility etc., Main focus is to improve the user experience on how fast the
system responds to a request.

26. What is Performance Testing?


This type of testing determines or validates the speed, scalability, and/or stability
characteristics of the system or application under test. Performance is concerned with achieving
response times, throughput, and resource-utilization levels that meet the performance
objectives for the project or product.

27. What is Load Testing?


It is to verify that the system/application can handle the expected number of transactions and
to verify the system/application behaviour under both normal and peak load conditions.

28. What is Volume Testing?


It is to verify that the system/application can handle a large amount of data.

29. What is Stress Testing?


It is to verify the behaviour of the system once the load increases more than its design
expectations

30. What is Scalability Testing?

g. 7 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Scalability testing is a type of non-functional testing. It is to determine how the application


under test scales with increasing workload

31. What is Recovery Testing?


Recovery testing is performed in order to determine how quickly the system can recover after
the system crash or hardware failure. It comes under the type of non-functional testing.

32. What is Compatibility Testing?


It is to deploy and check whether the application is working as expected in a different
combination of environmental components

33. What is Usability Testing?


To verify whether the application is user-friendly or not and was comfortably used by an end
user or not. The focus in this testing is to check whether the end user can understand and operate
the application easily or not. An application should be self-exploratory and must not require
training to operate it.

34. What is Security Testing?


Security testing is a process to determine whether the system protects data and maintains
functionality as intended.

35. What is Soak Testing?


Running a system at high load for a prolonged period to identify the performance problems is
called Soak or Endurance Testing.

36. What is Fuzz Testing?


Fuzz testing is used to identify coding errors and security loopholes in an application. By
inputting massive amount of random data to the system in an attempt to make it crash to identify
if anything breaks in the application.

37. What is Adhoc Testing?

g. 8 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Ad-hoc testing is quite opposite to the formal testing. It is an informal testing type. In Adhoc
testing, testers randomly test the application without following any documents and test design
techniques. This testing is primarily performed if the knowledge of testers in the application
under test is very high. Testers randomly test the application without any test cases or any
business requirement document.

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

39. What is a Bug?


If testers find any mismatch in the application/system in testing phase, then they call it as Bug.

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

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

42. What is Bug Severity?


Bug/Defect severity can be defined as the impact of the bug on customer’s business. It can be
Critical, Major or Minor. In simple words, how much effect will be there on the system because
of a particular defect.

43. What is a Critical Bug?


A critical bug is a showstopper which means a large piece of functionality or major system
component is completely broken and there is no workaround to move further. For example,
Due to a bug in one module, we cannot test the other modules because that blocker bug has
blocked other modules. Bugs which affect the customers’ business are considered as critical.

g. 9 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Example: 1. “Sign In” button is not working on Gmail App and Gmail users are blocked to
login to their accounts. 2. An error message pops up when a customer clicks on transfer money
button in a Banking website.

44. What is Bug Priority?


Defect priority can be defined as how soon the defect should be fixed. It gives the order in
which a defect should be resolved. Developers decide which defect they should take er up next
based on the priority. It can be High, Medium, or Low. Most of the times the priority status is
set based on the customer requirement.

45. Tell some examples of Bug Severity and Bug Priority?


High Priority & High Severity: Submit button is not working on a login page and customers
are unable to login to the application
Low Priority & High Severity: key feature failed but there’s no impact on customer business,
e.g., calculation fault in yearly report which end user won’t use on daily basis.
High Priority & Low Severity: Spelling mistake of a company name on the homepage
Low Priority & Low Severity: FAQ page takes a long time to load

Techniques of Software Testing


46. What is Boundary Value Analysis?
Boundary value analysis (BVA) is based on testing the boundary values of valid and invalid
partitions. Every partition has its maximum and minimum values, and these maximum and
minimum values are the boundary values of a partition.
Example: Input condition is valid between 1 to 10 Boundary values 0,1,2 and 9,10,11 5.2.

47. What is Decision Table testing?


Decision Table is a Cause-Effect Table. This test technique is appropriate for functionalities
which has logical relationships between inputs (if-else logic). In Decision table technique, we
deal with combinations of inputs. To identify the test cases with decision table, we consider
conditions and actions. We take conditions as inputs and actions as outputs.

48. Equivalence Class Partitioning

g. 10 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Equivalence Partitioning or Equivalence Class Partitioning is type of black box testing


technique which can be applied to all levels of software testing like unit, integration, system,
etc. In this technique, input data units are divided into equivalent partitions that can be used to
derive test cases which reduces time required for testing because of small number of test cases.
• It divides the input data of software into different equivalence data classes.
• You can apply this technique, where there is a range in the input field.
Example 1: Equivalence and Boundary Value
• Let's consider the behaviour of Order Pizza Text Box Below • Pizza values 1 to 10 is
considered valid. A success message is shown.

49. What is State Transition?


Using state transition testing, we pick test cases from an application where we need to test
different system transitions. We can apply this when an application gives a different output for
the same input, depending on what has happened in the earlier state.

50. Error Guessing


Error Guessing is a software testing technique based on guessing the error which can prevail
in the code. The technique is heavily based on the experience where the test analysts use their
experience to guess the problematic part of the testing application. Hence, the test analysts
must be skilled and experienced for better error guessing

51. What are main differences between UI and UX?


UX design refers to the term “user experience design”, while UI stands for “user interface
design”. There is an analogy I like to use to describe the different parts of a (digital) product:
If you imagine a product as the human body, the bones represent the code which give it
structure. The organs represent the UX design: measuring and optimizing against input for
supporting life functions. And UI design represents the cosmetics of the body, its presentation,
its senses and reactions

52. When to stop testing?

g. 11 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

(Or) How do you decide when you have tested enough? imp There are many factors involved
in the real-time projects to decide when to stop testing.
1. Testing deadlines or release deadlines
2. By reaching the decided pass percentage of test cases
3. The risk in the project is under acceptable limit
4. All the high priority bugs, blockers are fixed 5. When acceptance criteria are met.

53. What information should be included in a Defect or Bug report?


1. A summary of the defect
2. A full description of the defect including steps to reproduce
3. Screenshot attachments if required
4. Date the defect was found and raised
5. Who reported the defect?
6. Severity and/or Priority of the defect
7. Which component is the defect assigned?
8. Current status of Bug.

54. What is the test case for AC and AC Remote?


Test scenarios for AC
10. Verify the type of AC, if it’s Window AC or Split AC.
11. Verify the cooling capacity of the AC (ton). It should be as per the specifications.
12. Verify that the voltage requirement of the AC is as per the specifications.
13. Check if the AC voltage regulator works correctly or not.
14. Check the time taken by AC to start cooling, since the plug-in.
15. Check if it’s working in every temperature setting.
16. Verify the minimum temperature that can be achieved by the AC.
17. Verify the maximum temperature that can be achieved by the AC.
18. Check if the different AC fan speeds, work correctly.
19. Verify that the information displayed in the display panel is correct.
20. Check if all the keys of the display panel are working.
21. Check if the display isn’t too bright or too dark.
22. Check if the outer body of the AC is sturdy and rugged.

g. 12 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

23. Check if the AC works with the remote.


24. Check if all the keys of the panel do the same work as mentioned.
25. Check if the grill is movable in all directions.
26. Verify if the AC switches off and on when reached the desired temperature, for saving
electricity.
27. Check the amount of water leakage. Test scenarios for AC remote
1. Verify the functionality of the on/off button.
2. Check if all the keys are in perfect condition.
3. Check if the remote belongs to the same AC.
4. Check if the name of the keys is mentioned.
5. Check the response time between the AC remote and the AC
. 6. Check if the keys are doing the desired function or not.
7. Verify the durability of the keys and body of the remote.
8. Verify that the remote works each time old batteries are replaced.
9. Check if it’s waterproof if mentioned.
10. Check if too much pressure isn’t required to press the keys.
11. Check if the spacing among the keys is adequate.
12. Check the weight and dimensions of the remote.
13. Check if another function isn’t triggered with any key other than specified.
14. Check if the body of the remote isn’t flimsy.

Agile Methodology and Concepts

g. 13 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

55. What is Agile Testing?


Agile Testing is a practice that a QA follows in a dynamic environment where testing
requirements keep changing according to customer needs. It is done parallel to the development
activity where the testing team receives frequent small codes from the development team for
testing.

56. What is Product Backlog & Sprint Backlog?


Product backlog is maintained by the project owner which contains every feature and
requirement of the product.
Sprint backlog can be treated as the subset of product backlog which contains features and
requirements related to that sprint only.

57. Explain the Iterative and Incremental Development in Agile?


Iterative Development: Software is developed and delivered to the customer and based on the
feedback again developed in cycles or releases and sprints.
Example: Release 1 software is developed in 5 sprints and delivered to the customer. Now, the
customer wants some changes, then the development team plan for 2nd release which can be
completed in some sprints and so on.
Incremental Development: Software is developed in parts or increments. In each increment, a
portion of the complete requirement is delivered.

58. What is a test stub?


Test stub is a small code that mimics(copy) a specific component in the system and can replace
it. Its output is the same as the component it replaces.

59. What qualities should a good Agile tester have?


• He should be able to understand the requirements quickly.
• He should know Agile concepts and principals.
• As requirements keep changing, he should understand the risk involved in it.
• The agile tester should be able to prioritize the work based on the requirements.
• Communication is a must for an Agile tester as it requires a lot of communication with
developers and business associates.

g. 14 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

60. What is the difference between Epic, User stories & Tasks?
User Stories: It defines the actual business requirement. Generally created by the business
owner. Task: To accomplish the business requirements development team create tasks.
Epic: A group of related user stories is called an Epic.

61. What is a Task board in Agile?


Task board is a dashboard that shows the progress of the project. It contains:
• User Story: It has the actual business requirement, which consist of User Acceptance Criteria
(UAC).
• To Do: Tasks that can be worked on.
• In Progress: Tasks in progress.
• To Verify: Tasks pending for verification or testing
• Done: Completed tasks

62. What is the importance of daily stand-up meetings?


Daily stand-up meeting is essential for any team in which team discuss,
1. How much work has been completed?
2. What are the plans to resolve technical issues?
3. What steps need to do to complete the projects etc.

63. How many types of SCRUM Meeting?


There are 5 types of Scrum meetings which occur at a particular time during a Sprint cycle and
each particular type serves a distinct purpose.
1. Sprint Planning Meeting
2. Daily Scrum Meeting
3. Sprint Review Meeting
4. Sprint Retrospective Meeting
5. Backlog Refinement Meeting
Sprint Planning Meeting At the beginning of every Sprint, Sprint planning meeting is held.
Usually, the entire team is expected to be present during this meeting, including the product

g. 15 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

owner and the Scrum master. The goal of this meeting is to develop realistic Sprint backlog
and define the highest priority tasks which need to be done during the length of each Sprint.
Daily Scrum Meeting Daily Scrum meeting, or daily standups – as many people call them,
are short 15 minutes’ meetings which occur on daily basis. They are typically held at the same
time and same place every day and are strictly time boxed to no longer than 15 minutes. This
ensures the discussion to stay light, relevant, and quick.
• What did you accomplish yesterday?
• What are you working on today?
• Are there any impediments in your way?
Sprint Review Meeting At the end of each Sprint, a Sprint Review meeting is held. The core
objective of this meeting is to demonstrate the functionality of the product and what has been
achieved during a particular Sprint. Generally, product owner, Scrum Master, and other
stakeholders are present to review the product.
Sprint Retrospective Meeting A retrospective is a meeting held after a product ship to discuss
what happened during the product development and release process, with the goal of improving
things in the future based on those learnings and conversations.

Database & SQL Concept


64. DDL (Data Definition Language):

g. 16 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

It is used to define the database structure such as tables. It includes three statements
such as CREATE, ALTER, DROP and TRUNCATE

CREATE: It is used for creating the table.


CREATE TABLE table_name column_name1 data_type(size),
column_name2 data_type(size),
column_name3 data_type(size),

ALTER: The ALTER table is used for modifying the existing table object in the
database.

ALTER TABLE table_name ADD column_name datatype


OR
ALTER TABLE table_name DROP COLUMN column_name

65. DML (Data Manipulation Language):


These statements are used to manipulate the data in records. Commonly used DML
statements are INSERT, UPDATE, and DELETE.
The SELECT statement is used as a partial DML statement, used to select all or relevant
records in the table.

66. DCL (Data Control Language):


These statements are used to set privileges such as GRANT and REVOKE database
access permission to the specific user.

67. How do we use the DISTINCT statement? What is its use?

The DISTINCT statement is used with the SELECT statement. If the record contains
duplicate values, then the DISTINCT statement is used to select different values among
duplicate records.
Syntax: SELECT DISTINCT column_name(s) FROM table_name

68. What are the different Clauses used in SQL?

g. 17 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

WHERE Clause: This clause is used to define the condition, extract and display only
those records which fulfill the given condition.
Syntax: SELECT column_name(s) FROM table_name

WHERE condition; GROUP BY Clause: It is used with SELECT statement to group


the result of the executed query using the value specified in it. It matches the value with
the column name in tables and groups the end result accordingly.
Syntax: SELECT column_name(s) FROM table_name GROUP BY column_name;

HAVING clause: This clause is used in association with the GROUP BY clause. It is
applied to each group of results or the entire result as a single group. It is much similar
as WHERE clause but the only difference is you cannot use it without GROUP BY
clause
Syntax: SELECT column_name(s) FROM table_name GROUP BY column_name
HAVING condition;

ORDER BY clause: This clause is used to define the order of the query output either
in ascending (ASC) or in descending (DESC). Ascending (ASC) is set as the default
one but descending (DESC) is set explicitly.
Syntax: SELECT column_name(s) FROM table_name WHERE condition ORDER BY
column_name ASC|DESC;

USING clause: USING clause comes in use while working with SQL JOIN. It is used
to check equality based on columns when tables are joined. It can be used instead of
the ON clause in JOIN.
Syntax: SELECT column_name(s) FROM table_name JOIN table_name USING
(column_name)

69. Why do we use SQL constraints?


Which constraints we can use while creating a database in SQL?
Constraints are used to set the rules for all records in the table. If any constraints get
violated, then it can abort the action that caused it. Constraints are defined while

g. 18 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

creating the database itself with the CREATE TABLE statement or even after the table
is created once with the ALTER TABLE statement.

There are 5 major constraints are used in SQL, such as


• NOT NULL: That indicates that the column must have some value and cannot be left
NULL. • UNIQUE: This constraint is used to ensure that each row and column has a
unique value, and no value is being repeated in any other row or column.
• PRIMARY KEY: This constraint is used in association with NOT NULL and
UNIQUE constraints such as on one or the combination of more than one column to
identify the particular record with a unique identity.
• FOREIGN KEY: It is used to ensure the referential integrity of data in the table. It
matches the value in one table with another using the PRIMARY KEY

g. 19 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

70. What is the difference between DELETE and TRUNCATE? The differences are:
• The basic difference in both is DELETE command is DML command and the
TRUNCATE command is DDL.
• DELETE command is used to delete a specific row from the table whereas the
TRUNCATE command is used to remove all rows from the table.
• We can use the DELETE command with WHERE clause but cannot use the
TRUNCATE command with it.

9.28. What is the difference between DROP and TRUNCATE? TRUNCATE removes
all rows from the table which cannot be retrieved back, DROP removes the entire table
from the database and it also cannot be retrieved back.

g. 20 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Common SQL Queries

71. How to write query for find the highest salary from employees table.
SELECT name, MAX(salary) as salary FROM employee

72. How to write query for find the second highest salary from employees table.

1 st Method
SELECT name, MAX(salary) AS salary
FROM employee
WHERE salary < (SELECT MAX(salary) FROM employee);

2 nd Method
For Second max salary
Select name, salary From Employee ORDER BY Salary DESC LIMIT 1,1;

For third max salary


Select salary From Employee ORDER BY Salary DESC LIMIT 2,1;

73. How to write a query to show the details of a student from Students table whose
name start with K?

SELECT * FROM Student WHERE Student_Name like ‘K%’;


Here ‘like’ operator is used to perform pattern matching.

74. How to write the query to find the total no of columns in Table?
SELECT TABLE_NAME , count(COLUMN_NAME)
FROM information_schema.column

g. 21 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Application Program Interface (API)

75. What is API Testing?

API is a collection of routines, tools, protocols that together are required for building
the software application. Any system software or application software which consists
of multiple APIs can perform Application Programming Interface (API) testing. This
form of testing includes interaction between various or says multiple APIs as well as
the interaction between API and application program. The procedure mainly includes
making API calls using software and observing system response after receiving the
output.
76. Explain the API testing approach.
Mentioned below are the factors which determine the approach:
• Write appropriate test cases for the APIs and use testing techniques like boundary
value analysis, equivalence class, etc. for verifying the functionality.
• Verify the calls of the combination of two or more value-added parameters.
• Define the scope and basic functionality of the API program. • Define the accurate
input parameters.
• Test case execution and comparison of the results with expected results.
• Determining API behavior under conditions like the connection with files, etc.

77. . Difference between SOAP and REST API?


• SOAP stands for Simple Object Access Protocol whereas REST stands for
Representational State Transfer.
• SOAP is state full and REST is state less.
• SOAP is a protocol whereas REST is an architectural pattern.
• SOAP uses service interfaces to expose its functionality to client applications while
REST uses Uniform Service locators to access to the components on the hardware
device.
• SOAP needs more bandwidth for its usage whereas REST doesn’t need much
bandwidth.

g. 22 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

• Comparing SOAP vs REST API, SOAP only works with XML formats whereas
REST work with plain text, XML, HTML and JSON.
• SOAP cannot make use of REST whereas REST can make use of SOAP.

78. What are the testing methods that come under API testing?
API testing generally involves the following testing methods:
• Unit testing and Functional testing
• Load testing for testing the performance under load.
• Discovery testing for listing, creating and deleting the number of calls that have been
documented in API
. • Usability testing and Reliability testing for obtaining consistent results.
• Security testing and Penetration testing for validating all types of authentication.
• Automation testing for creating and executing scripts that require API calls execution
regularly.
• End to end Integration testing and Web UI testing.
• API documentation testing for determining its efficiency and effectiveness.

79. What challenges are included under API testing?


Challenges are the part of every form of testing and the same goes with API testing
too. Mentioned below are some common challenges that are faced in API testing:
• The first and foremost challenge is selecting an appropriate parameter and then its
combination.
• Parameter categorization
• Proper sequencing of call is required as this may lead to inadequate coverage in
testing.
• Output verification and validation
• Another important challenge is providing input values, which is very difficult as GUI
is not available in this case.

80. What are the types of issues observed while performing API testing?

g. 23 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

When testing is performed, then there have to be issues associated with them. Issues
observed while performing this form of testing are not new or much different but they
are common in this category.

Find below the list of such issues/defects:


• Inconsistent or absence of error handling mechanism
• Repetition or redundancy of the functionalities
• Missing required functionality in some cases
• Passing incorrect argument to the input values
• Improper messaging
• Stress and performance issues
• Reliability issues with respect to connection with other APIs
• Multithreading and improper handling issues.

81. What are HTTP Request and HTTP Response?

POST: The POST is most-often utilized to **create** new resources.

GET: The HTTP GET method is used to **read** (or retrieve) a representation of a
resource.

PUT: PUT is most-often utilized for **update** capabilities.

PATCH: PATCH is used for **modify** capabilities.

DELETE: DELETE is pretty easy to understand. It is used to **delete** a resource


identified by a URI.

82. What are the different HTTP Status codes?


2x Success Code Text Purpose

200 OK For successful GET and PUT requests.


201 Created For a successful POST request.

g. 24 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

202 Accepted For a request that resulted in a scheduled task being created to perform
the actual request.
204 No Content For a successful request that produced no response (such as DELETE
requests).
301 Moved Permanently/Redirection When the API routes have changed (unlikely), or
if the incoming request is not secure ( http ), the request will be redirected to the secure
( https ) version.
304 Not Modified This response will be sent if the request included an If-Modified-
Since header, but the resource has not been modified since the specified date.
400 Bad Request Issued when a malformed request was sent.
401 Unauthorized This response is sent when your client failed to provide credentials
or its credentials were invalid.
403 Forbidden Returned when permissions do not allow the operation.
404 Not Found When a particular resource doesn’t exist or couldn’t be found.
405 Method Not Allowed The resource was found, but doesn’t support the request
method. 406 Not Acceptable When the client specifies a response content type in the
Accept header that is not supported.
409 Conflict A change requested by the client is being rejected, due to a condition
imposed by the server. The exact reasons for this response will vary from one resource
to the next
413 Request Entity Too Large When the client requests too many objects. For example,
the limit parameter exceeded the maximum.
415 Unsupported Media Type Returned due to issues with the Content-Type header.
422 Missing or Invalid Data The request cannot be processed either because it omitted
required fields or because it contained invalid data. See the response for more details.
429 Too Many Requests When an OAuth client exceeds the rate limit for API requests
to a store
500 Internal Server Error When an error has occurred within the API.
501 Not Implemented When a request method is sent that is not supported by the API
(e.g., TRACE , PATCH ).
503 Service Unavailable When the store is “Down for Maintenance,” being upgraded
to a new version, or is suspended due to administrative action or a billing issue.
507 Insufficient Storage When the store has reached a limitation for the resource.

g. 25 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Selenium WebDriver (Automation)

83. What is Selenium? What are the different Selenium components?

• Selenium Integrated Development Environment (IDE) – Selenium IDE is a record


and playback tool. It is distributed as a Firefox Plugin.
• Selenium Remote Control (RC) – Selenium RC is a server that allows a user to create
test scripts in the desired programming language. It also allows executing test scripts
within the large spectrum of browsers.
• Selenium WebDriver – WebDriver is a different tool altogether that has various
advantages over Selenium RC. WebDriver directly communicates with the web
browser and uses its native compatibility to automate.
• Selenium Grid – Selenium Grid is used to distribute your test execution on multiple
platforms and environments concurrently.

84. What are the testing types that can be supported by Selenium?
Selenium supports the following types of testing:
1. Functional Testing
2. Regression Testing

85. What are the limitations of Selenium?


Following are the limitations of Selenium:
• Selenium supports testing of only web-based applications
• Mobile applications cannot be tested using Selenium
• Captcha and Barcode readers cannot be tested using Selenium
• Reports can only be generated using third-party tools like TestNG or JUnit.
• As Selenium is a free tool, thus there is no ready vendor support through the user can
find numerous helping communities.
• The user is expected to possess prior programming language knowledge.

g. 26 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

86. What is an XPath?


XPath is used to locate a web element based on its XML path. XML stands for
Extensible Markup Language and is used to store, organize and transport arbitrary data.
It stores data in a key-value pair which is very much similar to HTML tags. Both being
markup languages and since they fall under the same umbrella, XPath can be used to
locate HTML elements. The fundamental behind locating elements using XPath is the
traversing between various elements across the entire page and thus enabling a user to
find an element with the reference of another element.

87. When should I use Selenium Grid?


Selenium Grid can be used to execute same or different test scripts on multiple
platforms and browsers concurrently so as to achieve distributed test execution, testing
under different environments and saving execution time remarkably.

88. What are the different types of waits available in WebDriver?


There are two types of waits available in WebDriver:

1. Implicit Wait 2. Explicit Wait Implicit Wait: Implicit waits are used to provide a
default waiting time (say 30 seconds) between each consecutive test step/command
across the entire test script. Thus, the subsequent test step would only execute when
the 30 seconds have elapsed after executing the previous test step/command.
2. Explicit Wait: Explicit waits are used to halt the execution till the time a particular
condition is met, or the maximum time has elapsed. Unlike Implicit waits, explicit
waits are applied for a particular instance only. There are some common conditions
that are frequently of use when automating web browsers.
• title_is • title_contains • presence_of_element_located •
visibility_of_element_located • visibility_of • presence_of_all_elements_located

89. How can we get a text of a web element?


Get command is used to retrieve the inner text of the specified web element. The
command doesn’t require any parameter but returns a string value. It is also one of
the extensively used commands for verification of messages, labels, errors etc
displayed on the web pages.

g. 27 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Syntax: String Text = driver.findElement(By.id(“Text”)).getText()

90. When do we use findElement() and findElements()?

findElement(): findElement() is used to find the first element in the current web
page matching to the specified locator value. Take a note that only first matching
element would be fetched.
Syntax:WebElement element =
driver.findElements(By.xpath(“//div[@id=’example’]//ul//li”)); findElements():

findElements() is used to find all the elements in the current web page matching
to the specified locator value. Take a note that all the matching elements would be
fetched and stored in the list of WebElements.
Syntax: List elementList =
driver.findElements(By.xpath(“//div[@id=’example’]//ul//li”))

91. What is the difference between driver.close() and driver.quit command?


They do a similar thing but not exactly the same.
close(): WebDriver’s close() method closes the web browser window that the user
is currently working on or we can also say the window that is being currently
accessed by the WebDriver.
quit(): driver.quit() is used to exit the browser, end the session, tabs, pop-ups etc.

92. What is TestNG and how is it better than Junit?


TestNG is an advanced framework designed in a way to leverage the benefits by
both the developers and testers. With the commencement of the frameworks, JUnit
gained enormous popularity across the Java applications, Java developers and Java
testers with remarkably increasing the code quality. Despite being easy to use and
straightforward, JUnit has its own limitations which give rise to the need of
bringing TestNG into the picture. TestNG is an open-source framework which is
distributed under the Apache Software License and is readily available for
download. TestNG with WebDriver provides an efficient and effective test result
format that can, in turn, be shared with the stakeholders to have a glimpse on the

g. 28 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

product’s/application’s health thereby eliminating the drawback of WebDriver’s


incapability to generate test reports. TestNG has an inbuilt exception handling
mechanism which lets the program to run without terminating unexpectedly.
There are various advantages that make TestNG superior to JUnit. Some of them
are:
• Added advance and easy annotations
• Execution patterns can set
• Concurrent execution of test scripts
• Test case dependencies can be set

93. What are the different types of frameworks?

3. Data Driven Testing Framework: Data Driven Testing Framework helps the user
segregate the test script logic and the test data from each other. It lets the user store
the test data into an external database. The data is conventionally stored in “Key-
Value” pairs. Thus, the key can be used to access and populate the data within the
test scripts.

4. Keyword Driven Testing Framework: The Keyword Driven testing framework


is an extension to Data-driven Testing Framework in a sense that it not only
segregates the test data from the scripts, but it also keeps the certain set of code
belonging to the test script into an external data file.

5. Hybrid Testing Framework: Hybrid Testing Framework is a combination of


more than one above mentioned frameworks. The best thing about such a setup is
that it leverages the benefits of all kinds of associated frameworks.

7. Behaviour Driven Development (BDD) imp


Behaviour Driven Development framework allows automation of functional
validations in an easily readable and understandable format to Business Analysts,
Developers, Testers, etc

g. 29 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

. Example: Write the behaviour of the application for entering the username and
password. Scenario: Login check
Given I am on the login page
When I enter "username" username
And I enter "Password" password
And I click on the "Login" button
Then I am able to login successfully.

8. Page Object Model (POM) imp


Page Object Model (POM) is a design pattern, popularly used in test automation
that creates Object Repository for web UI elements. The advantage of the model is
that it reduces code duplication and improves test maintenance. Advantages of
POM
1. Page Object Design Pattern says operations and flows in the UI should be
separated from verification. This concept makes our code cleaner and easy to
understand.
2. The Second benefit is the object repository is independent of test cases, so we
can use the same object repository for a different purpose with different tools.
3. Code becomes less and optimized because of the reusable page methods in the
POM classes.
4. Methods get more realistic names which can be easily mapped with the
operation happening in UI. i.e. if after clicking on the button we land on the home
page, the method name will be like 'gotoHomePage()'.

94. What columns are present in test case template?


Answer: test case template should have details common across test case such as test case
created by, tested by, tested on, module name tested with their details. Test case template
should contain columns as listed and explained below
Test case id – unique identification of test case Requirement Traceability Matrix id – test case
scenarios or condition mapped with RTM id. Test scenario – short description of
what should be tested e.g., user should be able to log in
Pre-Requisite – assumption for test to carry out, such as application log in page is already
displayed in browser or desktop.

g. 30 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Test steps – steps to follow in order to test the scenario, manually or using script automatically
Test data used – valid test data created specific to the scenario e.g. username – admin and
password test123 to be used
Expected Result – what is expected from the feature being tested e.g., welcome page with
menus of other features should be displayed after user successfully logged in to the application.
Actual Result- what is actual output or result after testing application, this is to be filled in by
tester
Status – If there is difference between actual and expected result test will fail, else test will
pass
Remarks – In case test fails, bug report details can have mentioned her

95. Can you explain Defect Life Cycle?


Answer: When tester finds a defect while testing application, he will confirm deviation with
expected result, registers defect (bug) in bug management tool like Bugzilla or JIRA. Bug
status will be ‘New’, If defect is not agreed by product team or developer, its status will become
‘Rejected’. When developer agrees with the defect in application, when assigned to developer,
bug status will be ‘Open’, If Developer does not agree to the defect; its status will be ‘Deferred’.
‘Open’ bugs when resolved by developer its status becomes ‘Fixed’, once the bugs are fixed
and build is retested for regression testing, defect is verified, i f defect is not resolved, bug will
be ‘Reopened’, which will be reassigned to the developer for fixing. if defect is resolved and
confirmed by tester then Bug status will be ‘Closed’

96. What is Defect severity?


Answer: Severity of bug is an extreme level of damage like financial loss, company’s
reputation and loss of life, due to presence of the bug.
Example such as if point of sales machine does not function as expected, and does not dispense
bill, thereby customer may not pay the amount for the purchases, in such situation, the defect
due to which bills are not displaying amount of purchase, is termed as severe test case, as due
to such defect, there will be huge financial loss. Further say, infrared machine that used for
removing decay in the teeth malfunction and damages the jaw of patient, it may result into loss
of life. Defect severities are categorized into following levels
Blocker – Due to this defect type, it becomes impossible to further run the application, there
for the name –

g. 31 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Blocker Critical – There are some workarounds to accomplish the task, e.g., pdf format of file
type is not downloaded, whereas word type is possible.
Major – some error may lead to understanding the title or content by end user, e.g., software
display s title and content in English, but does not display some of the title in Arabic language
but display it in English only.
Minor – there are some defects which has very minor impact on functionality of application,
e.g., missing space between words, commas are missed in sentences. Low -These defects do
not impact at all, however if fixed it will be aesthetically pleasing, e.g., Size of button, form
border goes out of screen and need to scroll in order to view the content.

97. What is Defect priority?


Answer: Priority gives a need of urgency to fix or resolve the defect, Example can be if a
reputed pen manufactures company while printing the pen model or company name will wrong
spellings, then such bugs should be fixed on priority basis. Defect priorities are categorized
into following levels
Urgent – this must be fixed immediately e.g., payment gateway pages not displaying, or
conformance of order processed not sent via email or SMS, or transaction records not printed
in account details in banking software.
High – this should be resolved in subsequent releases, e.g., presentation or video does not have
company logo or has written content but does not have voice that narrates above content.
Medium – should be fixed based on the level of severity- eg. Error occurring while user
updates his mobile number, while communication has options such as his email and mobile.
Low – May or may not be fixed e.g., spelling or grammar mistake in introductory page of
portal, as long as meaning is conveyed to the audience.

98. What is Software Testing Life Cycle?


Answer: Software Testing Life Cycle (STLC) is a sequence of activities performed by testers
such as
Requirement & Analysis – Understanding the client’s requirement and what actually requires,
how to test the requirements,
Test Planning – what should be tested in an application, How and who will test the application
Test Case Design – test scenarios, mapping with requirement traceability matrix, test case
creation, and test data used

g. 32 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

Test Environment Setup – what hardware and software need to install or configure to build test
environment.
Test Execution – running the application in order to verify features as per test case designed,
reporting bugs, track the bugs and regression test till it gets resolved.
Test Closure – Creation of test reports, total bugs pending, critical bugs if any, justification for
releasing application to client.

99. What are the contents of defect report?


Answer: A defect report should inform description about the defect. Which version or build of
software release being tested during which defect occured Which is the module name, how to
access this module (path), what were the steps carried out What was the functionality affected,
how severe you think the defect is Name of the tester who discovered the defect, name of the
developer to whom defect has been assigned, Test case affected mapped to requirement
specification document ids and number of test cases that may not be tested due to the defect

100. Write test cases on WhatsApp application


Answer: WhatsApp are mobile application to communicate between two friends or more group
of people by sharing text, image, video or audio files.
WhatsApp application should able to quickly download in mobile
WhatsApp numbers should be present in Contact List to send messages to that
number from mobile via whatsapp. The message received should be from whatsapp
number may not be present in contact list of mobile. WhatsApp should allow typing
text WhatsApp should allow attaching image(s) WhatsApp should allow video and
audio file(s) WhatsApp should able to send or receive text, image, video or audio
files. The received files should able to download to the mobile’s storage and viewer
should able to read or view these files WhatsApp should have notification of receipt
of new files, give status of time of receipt a nd provide status of read files to the
sender. WhatsApp web application should be accessible on scanning

101. What is Requirement Traceability Matrix (RTM)?


• In testing this is the main part, this matrix will help to crosscheck whether the test cases as
covered all the requirement specifications. • The main purpose of Requirement Traceability
Matrix is to see that all test cases are covered so that no functionality should miss while testing.

g. 33 Bhagyashri Karankar.
INTERVIEW QUESTION _ SOFTWARE TESTING

• Requirement Traceability Matrix. Requirement Traceability Matrix or RTM captures all


requirements proposed by the client or development team and their traceability in a single
document delivered at the conclusion of the life-cycle. In other words, it is a document that
maps and traces user requirement with test cases. • Traceability Matrix means it provide
mapping between user requirements ansd the test cases. Main Advantage is if we missed any
test cases for the requirements at that time we can find out easy for what test cases missed for
the what functionality by preparing the tracebility matrix.

g. 34 Bhagyashri Karankar.

You might also like