Professional Documents
Culture Documents
Software Testing
Software Testing
Software Testing
the actual software
product matches expected
requirements and to ensure
What is it? that software product is
Defect free
https://www.guru99.com/software-testing-introduction-importance.html
● Enhance product quality
● Improve security
● Detect compatibility
Software Testing
with different devices
and platforms
● Make sure that the end
Why this is important? result meets the
business and user
requirements and
specifications
https://www.guru99.com/software-testing-introduction-importance.html
Software Quality A procedure to ensure the
Assurance
quality of software
products or services
provided to the customers
What is it? by an organization
https://www.guru99.com/all-about-quality-assurance.html
Software Quality
● To monitor and improve
the software
Assurance
development process
● Make sure that the
standards and
Why this is important? procedures are followed
● Preventing the quality
problems from occurring
https://www.guru99.com/all-about-quality-assurance.html
Software Quality Assurance VS Software Testing
https://www.quora.com/What-is-the-difference-between-QA-and-software-testing
https://www.guru99.com/quality-assurance-vs-quality-control.html
https://www.tutorialspoint.com/software_testing/software_testing_qa_qc_testing.htm
Software Development Life
SDLC
Cycle
Defines all the standard phases
which are involved during the
What is it? software development process
https://www.guru99.com/sdlc-vs-stlc.html
SDLC Phases
1
Requirement
Gathering
6 2
Maintenance Design
5 3
Deployment Build
4
Test
https://www.guru99.com/sdlc-vs-stlc.html
Software Testing Life
STLC
Cycle
A sequence of specific
activities conducted during the
What is it? testing process to ensure
software quality goals are met
https://www.guru99.com/software-testing-life-cycle.html
STLC Phases
1
Requirement
Analysis
6 2
5 3
Environment
Setup
https://www.guru99.com/software-testing-life-cycle.html
Test Case Writing
1. Testing shows presence
of defects
2. Exhaustive testing is
7 Principles of
not possible
3. Early testing
Software Testing
4. Defect clustering
5. Pesticide paradox
6. Testing is context
dependent
7. Absence of error
fallacy
https://www.guru99.com/software-testing-seven-principles.html
1. Functional Testing
https://www.guru99.com/software-testing-introduction-importance.html
Functional Testing
It validates the software
system against the
functional requirements or
What is it? specifications
https://www.guru99.com/functional-testing.html
● Unit testing
● Smoke testing
Functional Testing
● Sanity testing
● User Acceptance testing
● Integration testing
Types? ● Black Box testing
● White Box testing
● And so on…
https://www.guru99.com/functional-testing.html
Non - Functional Checks the non functional
Testing
aspects such as
performance, usability,
reliability etc. of a
What is it? software application
https://www.guru99.com/non-functional-testing.html
https://www.guru99.com/reliability-testing.html
Non - Functional ●
●
Performance testing
Volume testing
Testing
● Usability testing
● Load testing
● Stress testing
Types? ● Scalability testing
● And so on…
https://www.guru99.com/non-functional-testing.html
Functional testing VS Non - Functional Testing
https://www.guru99.com/functional-testing-vs-non-functional-testing.html
https://www.guru99.com/functional-testing.html
Manual Testing
Test cases are executed by
a tester without using any
automation tools
What is it?
https://www.guru99.com/manual-testing.html
Automation
Testing
Test cases are performed
using special automated
testing software tools
What is it?
https://www.guru99.com/automation-testing.html
Manual testing VS Automation Testing
1. Time-consuming 1. Faster
2. Not much accurate because of 2. Reliable method because of the
the possibility of the human tools and scripts
errors 3. Performance Tests have to test
3. Performance Testing is not by an automation tool
feasible manually 4. Its accurate and never gets
4. Repetitive manual test bored
execution can be boring and
error-prone
https://www.guru99.com/difference-automated-vs-manual-testing.html
● Focuses on input and
output and it is entirely
based on software
requirements and
specifications
Functionalities are tested
https://www.guru99.com/black-box-testing.html
● Internal structure, design
and coding of software are
tested to verify flow of
input-output
https://www.guru99.com/white-box-testing.html
● Test a software product
or application with
partial knowledge of
https://www.guru99.com/grey-box-testing.html
Black Box VS White Box Testing
https://www.guru99.com/back-box-vs-white-box-testing.html
Only individual units or
components of a software
https://www.guru99.com/unit-testing-guide.html
Integration
Software modules are
integrated logically and
tested as a group
https://www.guru99.com/integration-testing.html
Performed on a complete
integrated system to
https://www.guru99.com/system-testing.html
https://www.geeksforgeeks.org/system-testing
To verify/accept the
software system before
User Acceptance moving the software
application to the
Testing production environment
Performed by the end user or the
What is it? client and it is done in the
final phase of testing after
functional, integration and
system testing is done
https://www.guru99.com/user-acceptance-testing.html
Regression To confirm that a recent
program or code change has
Testing
not affected the existing
features
It ensures that the old code
What is it? still works once the latest code
changes are done.
https://www.guru99.com/regression-testing.html
To check specific test
cases that are found with
bug/s in the final
execution
https://www.guru99.com/re-testing-vs-regression-testing.html
Performed after receiving
a software build with
Sanity Testing
minor changes in code or
functionality, to check
that the bugs have been
What is it? fixed and no further
issues are introduced due
to these changes
https://www.guru99.com/smoke-sanity-testing.html
To verify that the
critical functionalities
Smoke Testing
of software are working
fine
It is executed before any
What is it? detailed functional or
regression tests are executed
https://www.guru99.com/smoke-sanity-testing.html
Sanity Testing VS Smoke Testing
https://www.guru99.com/smoke-sanity-testing.html
Boundary Value
Testing
Testing between extreme
ends or boundaries between
partitions of the input
What is it? values
https://www.guru99.com/equivalence-partitioning-boundary-value-analysis.html
Select input variable
Boundary Value
values at their,
1. Minimum
https://www.guru99.com/equivalence-partitioning-boundary-value-analysis.html
Severity and
Severity is a degree of
impact a bug or a Defect
Priority
has on the software
https://www.guru99.com/defect-severity-in-software-testing.html
Severity,
Severity and
1. Critical
2. Major
Priority
3. Medium
4. Low
Priority,
Types?
1. High
2. Medium
3. Low
https://www.guru99.com/defect-severity-in-software-testing.html