SlideShare ist ein Scribd-Unternehmen logo
1 von 85
Software Testing
Omar Al-Bukhari
History
• In the 1980s, bugs in the code controlling the machine
called Therac-25, used for radiation therapy, lead to
patient deaths.
• In 1996, the $1.0 billion rocket called Ariane 5 was
destroyed a few seconds after launch due to a bug in the
on-board guidance computer program.
What is Bug?
• In IT, a bug refers to an error, fault or flaw in
any computer program or a hardware system.
• A bug produces unexpected results or causes a
system to behave unexpectedly.
What is Software Testing
• Software testing is a process of executing a program
or application with the intent of finding the software
bugs.
• It can also be stated as the
process of validating and
verifying that a software
program or application or
product meets the business
and technical requirements
that guided it's design and
development.
Why is Software testing necessary?
• Point out the defects and
errors that were made during
the development phases.
• It makes sure of the
Customer’s reliability and their
satisfaction in the application.
• Quality product delivered to
the customers helps in gaining
their confidence.
Why is Software testing necessary?
• Testing is required for an
effective performance of
software application or product.
• To ensure that the application
should not result into any
failures because it can be very
expensive in the future or in the
later stages of the development.
• It’s required to stay in the
business.
Software Testing Growth
• With the growth in IT and Software, demand for software
testers has increased around the world.
• In past few years, Software Testing has become an
extremely good career choice in terms of professional
growth, learning experience and income.
• Behind every great software developer, there is endless
effort and hard work of an equally talented software
tester.
• It is the software tester who ensures the proper
functioning of a program or tool being designed and
checks their security/functional loopholes.
What is Quality Assurance
• Quality Assurance is known as QA and focuses on
preventing defect.
• Quality Assurance ensures that the approaches,
techniques, methods and processes that are
designed for the projects are implemented correctly.
• Quality assurance activities monitor and verify that
the processes used to manage and create the
deliverables have been followed and are operative.
What is Quality Control
• Quality Control is known as QC and focuses on
identifying defect.
• QC ensures that the approaches, techniques,
methods and processes that are designed in the
project are following correctly.
• QC activities monitor and verify that the project
deliverables meet the defined quality standards.
Quality Assurance Quality Control
Goal The goal of QA is to improve
development and test processes so
that defects do not arise when the
product is being developed.
The goal of QC is to
identify defects after a
product is developed and
before it's released.
Responsibility Everyone on the team involved in
developing the product is
responsible for quality assurance.
Quality control is usually
the responsibility of a
specific team that tests the
product for defects.
Example Verification is an example of QA Validation/Software
Testing is an example of
QC
As a tool QA is a managerial tool QC is a corrective tool
Orientation QA is process oriented QC is product oriented
Types Of
Types of Testing
Functional Non-Functional Maintenance
Smoke / Sanity
Unit Testing
Integration Testing
User Acceptance
System Testing
ADHOC Testing
Negative Testing
Positive Testing
Black, White &
Gray Box Testing
Exploratory Testing
So on…
Performance Testing
Load Testing
Stress Testing
Endurance Testing
Volume Testing
Stress Testing
Spike Testing
Reliability Testing
Usability Testing
Efficiency Testing
API
So on…
Maintenance Testing
Regression Testing
• You may find some differences in this classification
in different resources as per the requirement, but
the general theme remains the same.
• There are more than 30 type of testing and still
adding.
• No need to bother or worry, you will pick them up as
you age in the testing industry.
• Not all testing types are applicable to all projects but
depend on nature & scope of the project.
Three General Testing Types
Maintenance
Maintenance Testing
• Usually maintenance testing is consisting of two parts:
▫ First one is, testing the changes that has been made
because of the correction in the system or if the system
is extended or because of some additional features
added to it.
▫ Second one is regression
testing to prove that the rest
of the system has not been
affected by the maintenance
work.
Regression Testing
• Regression testing is a type of software testing which
verifies that software which was previously developed
and tested still performs correctly after it was changed
or interfaced with other software.
• Regression Testing is required when there is a
▫ Change in requirements and code is modified according to the
requirement
▫ New feature is added to the software
▫ Defect fixing
▫ Performance issue fix
Sanity Testing & Smoke Testing
Smoke Testing
• Smoke Testing is a kind of Software Testing
performed after software build to ascertain that the
critical functionalities of the program is working
fine.
• It is executed "before" any detailed functional or
regression tests are executed on the software build.
• The purpose is to reject a badly broken application,
so that the QA team does not waste time installing
and testing the software application.
Sanity Testing
• Sanity testing, a software testing technique
performed by the test team for some basic tests.
• Sanity Testing makes
sure that the main
functionality of the
software is working as
expected and that
nothing is affected after
any releases.
Black, Gray and White Box Testing
Black Box Testing
• Black Box testing is a software testing
technique that focuses on the analysis of
software functionality, versus internal system
mechanisms.
• Black box testing was developed as a method of
analyzing client requirements, specifications and
high-level design strategies.
White Box Testing
• White Box Testing (also known as Code-
Based Testing) is a software testing method in
which the internal structure, design,
implementation of the item being tested is
known to the tester.
• The tester chooses inputs to exercise paths
through the code and determines the
appropriate outputs.
Gray Box Testing
• Gray Box testing is a software testing
methodology that involves the combination of
white box and black box testing.
• It makes use of the straightforward technique of
black box testing, as well as the approach for
code targeted systems, as in the case of white
box testing.
• Gray box testing is geared toward finding defects
based on improper structure or application use.
Levels of Software Testing
Unit Testing
• Unit Testing is a level of software testing where
individual units/ components of a software are
tested.
• The purpose is to validate that each unit of the
software performs as designed.
• Unit Testing is normally performed by software
developers themselves or their peers.
• Unit testing increases confidence in changing/
maintaining code.
• Unit Testing is the first level of testing and is
performed prior to Integration Testing.
Integration Testing
• Integration Testing is a level of software
testing where individual units are combined and
tested as a group.
• The purpose of this level of testing is to expose
faults in the interaction between integrated
units.
• Either Developers themselves or independent
Testers perform Integration Testing.
• Integration Testing is performed after Unit
Testing and before System Testing.
System Testing
• System Testing is a level of the software
testing where a complete and integrated
software is tested.
• The purpose of this test is to evaluate the
system’s compliance with the specified
requirements.
• Normally, independent Testers perform System
Testing.
• System Testing is performed after Integration
Testing and before Acceptance Testing.
Acceptance Testing
Acceptance Testing
• Acceptance Testing is a level of the software
testing where a system is tested for acceptability.
• The purpose of this test is to evaluate the
system’s compliance with the business
requirements and assess whether it is acceptable
for delivery.
• Who performs it?
Internal Acceptance Testing (Alpha Testing)
• Internal Acceptance Testing (Also known
as Alpha Testing) is performed by members of
the organization that developed the software but
who are not directly involved in the project
(Development or Testing).
• Usually, it is the members of Product
Management, Sales and/or Customer Support.
External Acceptance Testing
• External Acceptance Testing is performed by people
who are not employees of the organization that
developed the software.
• Customer Acceptance Testing is performed by
the customers of the organization that developed the
software. They are the ones who asked the
organization to develop the software.
• User Acceptance Testing (Also known as Beta
Testing) is performed by the end users of the
software. They can be the customers themselves or
the customers’ customers.
AD HOC Testing (Random/Monkey Testing)
• AD HOC testing is a method of software
testing without any planning and documentation.
• Very interesting defects
are found in adhoc testing
which would never have
been found if written test
cases existed and were
strictly followed.
• The success of ad hoc testing depends on the
creativity and tenacity of the tester
Negative & Positive Testing
• Negative Testing is Testing the system or application
using negative data (Invalid Data).
• Positive Testing is testing process where the system
validated against the valid input data.
Exploratory Testing
• Exploratory testing, is all about discovery, investigation
and learning.
• Testers may note down ideas about what to test before
test execution. The focus of exploratory testing is more on
testing as a "thinking" activity.
End-To-End Testing
• End-to-end testing is a technique used to test whether
the flow of an application right from start to finish is
behaving as expected.
• The purpose of performing
end-to-end testing is to
identify system dependencies
and to ensure that the data
integrity is maintained
between various system
components and systems.
Non-Functional
Performance Testing
• Performance testing is the process of determining the speed
or effectiveness of a computer, network, software program or
device.
• The focus of Performance testing is checking a software
program's
▫ Speed - Determines whether the application responds
quickly.
▫ Scalability - Determines maximum user load the software
application can handle.
▫ Stability - Determines if the application is stable under
varying loads.
Types of Performance Testing
Load Testing
• Load testing is a kind of performance testing which
determines a system's performance under real-life
load conditions.
• This testing helps determine
how the application behaves
when multiple users access it
simultaneously.
• An Airline website was not able to handle 10000+
users during a festival offer.
• $ 4.4 Billion Lost annually due to poor performance
Goal of Load Testing
• Loading testing identifies the following problems
▫ Response time for each transaction
▫ Performance of System components under various loads
▫ Performance of Database components under different loads
▫ Network delay between the client and the server
▫ Server configuration issues like Web server, application
server, database server…etc
▫ Hardware limitation issues like CPU maximization, memory
limitations, network bottleneck, etc.
Stress Testing
• Stress testing is used to test the stability & reliability of
the system.
• This test mainly determines
the system on its robustness
and error handling under
extremely heavy load
conditions.
• The goal of stress testing is
to analyze the behavior of
the system after failure.
Load Testing Stress Testing
Load Testing is to test the system
behavior under normal workload
conditions, and it is just testing
or simulating with the actual
workload
Stress testing is to test the
system behavior under extreme
conditions and is carried out till
the system failure.
Load testing does not break the
system
stress testing tries to break the
system by testing with
overwhelming data or resources.
Spike Testing
• The testing process in which the system or software is
sometimes overloaded and yet at other times the load is
decreased tremendously is known as Spike Testing.
• Spike testing is mainly done to see how the system reacts
with unexpected rise and fall of the load.
Purpose of Spike Testing
• How Well The System Performs
▫ The main aim of Spike Testing is to access how
well the load is managed by the software when it
oscillates between two opposite spectrums.
• Recovery Time
▫ The software has to recover between two
subsequent spikes or peaks as it impacts the
performance.
Endurance Testing
• It simply means testing of enduring capability of the
software product.
• This type of testing is done
with the purpose of
examining the software's
competency to perform
consistently and accurately,
over a longer period of time,
along with the continuous
increment in a load.
Volume Testing
• Volume testing is a non-functional performance testing,
where the software is subjected to a huge volume of data.
It is also referred as flood testing.
• Volume testing is done to
analyze the system performance
by increasing the volume of data
in the database.
• Usually, the volume of data being
considered is large. The data can
either be the size of an interface
file that is being tested or the size
of the database.
What to Test in Volume Testing
• In volume testing, following things need to be tested
▫ Test to check if there is any data loss
▫ Check the system's response time
▫ Check if the data is stored correctly or not
▫ Verify if the data is overwritten without any notification
▫ Check for warning and error messages, whether it comes at
all for volume problems
▫ Check whether high volume data affects the speed of
processing
Scalability Testing
• Scalability testing is a performance
testing parameter that investigates a
system's ability to grow by increasing
the workload per user, or the number
of concurrent users, or the size of a
database.
• Scalability testing ensures that an application can handle
the projected increase in user traffic, data volume,
transaction counts frequency, etc.
• It tests the system, processes and databases ability to
meet a growing need.
Reliability Testing (Probability)
• Reliability testing is a type of testing to verify that
software is capable of performing a failure-free operation
for a specified period of time in a specified environment.
• Reliability testing in software
assures that the product is
fault free and is reliable for
its intended purpose.
• Example:- The probability
that a PC in a store is up and
running for eight hours with-
out crashing is 99%; this is
referred as reliability.
Usability Testing
• Usability Testing is a type
of software testing where, a
small set of target end-
users, of a software system,
"use" it to expose usability
defects.
• This testing mainly focuses
on the user's ease to use the
application, flexibility in
handling controls and
ability of the system to meet
its objectives.
Usability Testing Process
• Usability testing process consists of the
following phases:
Efficiency Testing
• Efficiency testing test the amount of code and
testing resources required by a program to perform a
particular function.
• Software Test Effectiveness
covers three aspects:
▫ How much the customer’s
requirements are satisfied by
the system.
▫ How well the customer specifications are achieved by
the system.
▫ How much effort is put in developing the system.
API (Application Programming Interface)
• It enables communication and data exchange
between two separate software systems.
• A software system implementing an API
contains functions/sub-routines which can be
executed by another software system.
API Workflow
API Testing
• API testing uses software to send calls to the API
and get the output.
• API testing treats the component under test as a
black box.
• The goal of API testing is to verify correct
performance and error handling of the
component prior to its integration into an
application.
4 Commonly Used Methods
HTTP Response Codes
• 200 OK: – This code indicates that the request was made successful.
• 201 Created: – This code indicates that request was successful and
a resource was created and it validated the success of a PUT or POST
request.
• 400 Bad Request: – This error code happens with POST and PUT
requests, when the data does not pass validation or the passed data is
in the wrong format.
• 404 Not Found: – This code indicates that the required resource
could not be found or not available.
• 401 Unauthorized: – This error code indicates that you need to
provide authentication before accessing the resource.
• 405 Method Not Allowed: – Method Not Allowed error indicates
that the requested HTTP method is not supported for this resource.
• 409 Conflict: – This code indicates that the user create the same
resource twice by which conflict occurs.
• 500 Internal Server Error: – Due to server side issue this error
code occurs.
Common Issues in API
• Delayed in API Response time
• To verify when API doesn’t return any response data.
• Difficulty in connecting and getting response from API
• Output response should be checked on the basis of
provided input request.
• Verification of the API whether it triggers some other
event or request another API
• Verification of the API whether it is updating any data
structure
Priority VS Severity
Test Plan
• A test plan is a detailed document that outlines
the test strategy, Testing objectives, resources
required for testing, test
schedule, test estimation
and test deliverables.
• The test plan serves as
a blueprint to conduct
software testing activities as a defined process
which is minutely monitored and controlled by
the test manager.
Importance of Test Plan
• Test Plan helps us determine the effort needed
to validate the quality of the application under
test.
• Help people outside the test team such as
developers, business managers, customers
understand the details of testing.
• Test Plan guides our thinking. It is like a rule
book, which needs to be followed.
• Important aspects like test estimation, test
scope, test strategy are documented in Test
Plan, so it can be reviewed by Management
Team and re-used for other projects.
How To Write Test Plan
Test Strategy
• Test strategy is a plan for defining the testing
approach, and it answers to questions like what
you want to get done and how you are going to
accomplish it.
• Test strategy is a guideline to be followed to
achieve the test objective and execution of test
types mentioned in the testing plan.
• It deals with test objective, test environment,
test approach, automation tools and strategy,
contingency plan, and risk analysis
Test Strategy Components
Test Strategy
Test
Environment
Scope &
ObjectivesTest
Management
Test
Execution
Defect
Management
Team &
Resources
Test Process
Test
Methodology
What is Agile Methodology
• AGILE methodology is a practice
that promotes continuous
iteration of develop-
ment and testing
throughout the
software develop-
ment lifecycle of the
project.
• Both development and
testing activities are con-
current unlike the Waterfall
model
What is Waterfall Methodology
• The waterfall model is a sequential (non-
iterative) design process.
• Used in software development processes, in
which progress is seen as flowing steadily
downwards (like a waterfall) through the
phases of conception, initiation, analysis,
design, construction, testing, production
/implementation and maintenance.
What is Waterfall Methodology
Software Development LifeCycle
Foundation of the
requirement
analysis.
Defining project
goals as functions.
Design the
product’s optimal
architecture.
Build the product
and create
programming code
Check for errors,
bugs and other
issues.
Release into the
marketplace.
Software testing
Software testing

Weitere ähnliche Inhalte

Was ist angesagt?

Types of software testing
Types of software testingTypes of software testing
Types of software testingTestbytes
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing FundamentalsChankey Pathak
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.pptKomal Garg
 
How To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | EdurekaHow To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | EdurekaEdureka!
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1Raghu Kiran
 
Fundamentals of Software Testing
Fundamentals of Software TestingFundamentals of Software Testing
Fundamentals of Software TestingSagar Joshi
 
Types of Software Testing | Edureka
Types of Software Testing | EdurekaTypes of Software Testing | Edureka
Types of Software Testing | EdurekaEdureka!
 
Software Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing TrendsSoftware Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing TrendsKMS Technology
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software TestingNishant Worah
 
Test Process
Test ProcessTest Process
Test Processtokarthik
 
Non Functional Testing
Non Functional TestingNon Functional Testing
Non Functional TestingNishant Worah
 

Was ist angesagt? (20)

Types of software testing
Types of software testingTypes of software testing
Types of software testing
 
Introduction & Manual Testing
Introduction & Manual TestingIntroduction & Manual Testing
Introduction & Manual Testing
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.ppt
 
Software testing
Software testingSoftware testing
Software testing
 
How To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | EdurekaHow To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | Edureka
 
Manual testing
Manual testingManual testing
Manual testing
 
Types of testing
Types of testingTypes of testing
Types of testing
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
 
Black box software testing
Black box software testingBlack box software testing
Black box software testing
 
Effective Software Test Case Design Approach
Effective Software Test Case Design ApproachEffective Software Test Case Design Approach
Effective Software Test Case Design Approach
 
Fundamentals of Software Testing
Fundamentals of Software TestingFundamentals of Software Testing
Fundamentals of Software Testing
 
Types of Software Testing | Edureka
Types of Software Testing | EdurekaTypes of Software Testing | Edureka
Types of Software Testing | Edureka
 
Istqb foundation level day 1
Istqb foundation level   day 1Istqb foundation level   day 1
Istqb foundation level day 1
 
Software Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing TrendsSoftware Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing Trends
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Test Process
Test ProcessTest Process
Test Process
 
Non Functional Testing
Non Functional TestingNon Functional Testing
Non Functional Testing
 

Ähnlich wie Software testing

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSaqib Raza
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTINGRaju Raaj
 
DISE - Software Testing and Quality Management
DISE - Software Testing and Quality ManagementDISE - Software Testing and Quality Management
DISE - Software Testing and Quality ManagementRasan Samarasinghe
 
Software Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)ShudipPal
 
Fundamentals of software part 1
Fundamentals of software part 1Fundamentals of software part 1
Fundamentals of software part 1Siddharth Sharma
 
Software Testing Training in Chandigarh
Software Testing Training in ChandigarhSoftware Testing Training in Chandigarh
Software Testing Training in ChandigarhKreativan Technologies
 
Software Testing PPT | Software All Testing
Software Testing PPT | Software All TestingSoftware Testing PPT | Software All Testing
Software Testing PPT | Software All Testingsankalpkumarsahoo174
 
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...ShudipPal
 
Software Testing Presentation in Cegonsoft Pvt Ltd...
Software Testing Presentation in Cegonsoft Pvt Ltd...Software Testing Presentation in Cegonsoft Pvt Ltd...
Software Testing Presentation in Cegonsoft Pvt Ltd...ChithraCegon
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTINGacemindia
 
Solution Evaluation (BA Role)
Solution Evaluation (BA Role)   Solution Evaluation (BA Role)
Solution Evaluation (BA Role) Shwetha-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingShwetha-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingLakshmi-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingSwatiS-BA
 

Ähnlich wie Software testing (20)

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
DISE - Software Testing and Quality Management
DISE - Software Testing and Quality ManagementDISE - Software Testing and Quality Management
DISE - Software Testing and Quality Management
 
Software Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)
 
Fundamentals of software part 1
Fundamentals of software part 1Fundamentals of software part 1
Fundamentals of software part 1
 
Software Testing Training in Chandigarh
Software Testing Training in ChandigarhSoftware Testing Training in Chandigarh
Software Testing Training in Chandigarh
 
Software Testing PPT | Software All Testing
Software Testing PPT | Software All TestingSoftware Testing PPT | Software All Testing
Software Testing PPT | Software All Testing
 
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software Testing Presentation in Cegonsoft Pvt Ltd...
Software Testing Presentation in Cegonsoft Pvt Ltd...Software Testing Presentation in Cegonsoft Pvt Ltd...
Software Testing Presentation in Cegonsoft Pvt Ltd...
 
testing.pptx
testing.pptxtesting.pptx
testing.pptx
 
Software_Testing_ppt.pptx
Software_Testing_ppt.pptxSoftware_Testing_ppt.pptx
Software_Testing_ppt.pptx
 
Different Types Of Testing
Different Types Of TestingDifferent Types Of Testing
Different Types Of Testing
 
Software-Testing-ppt.pptx
Software-Testing-ppt.pptxSoftware-Testing-ppt.pptx
Software-Testing-ppt.pptx
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Software Quality
Software Quality Software Quality
Software Quality
 
Solution Evaluation (BA Role)
Solution Evaluation (BA Role)   Solution Evaluation (BA Role)
Solution Evaluation (BA Role)
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 

Kürzlich hochgeladen

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...masabamasaba
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 

Kürzlich hochgeladen (20)

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 

Software testing

  • 2. History • In the 1980s, bugs in the code controlling the machine called Therac-25, used for radiation therapy, lead to patient deaths. • In 1996, the $1.0 billion rocket called Ariane 5 was destroyed a few seconds after launch due to a bug in the on-board guidance computer program.
  • 3.
  • 4. What is Bug? • In IT, a bug refers to an error, fault or flaw in any computer program or a hardware system. • A bug produces unexpected results or causes a system to behave unexpectedly.
  • 5. What is Software Testing • Software testing is a process of executing a program or application with the intent of finding the software bugs. • It can also be stated as the process of validating and verifying that a software program or application or product meets the business and technical requirements that guided it's design and development.
  • 6. Why is Software testing necessary? • Point out the defects and errors that were made during the development phases. • It makes sure of the Customer’s reliability and their satisfaction in the application. • Quality product delivered to the customers helps in gaining their confidence.
  • 7. Why is Software testing necessary? • Testing is required for an effective performance of software application or product. • To ensure that the application should not result into any failures because it can be very expensive in the future or in the later stages of the development. • It’s required to stay in the business.
  • 8. Software Testing Growth • With the growth in IT and Software, demand for software testers has increased around the world. • In past few years, Software Testing has become an extremely good career choice in terms of professional growth, learning experience and income. • Behind every great software developer, there is endless effort and hard work of an equally talented software tester. • It is the software tester who ensures the proper functioning of a program or tool being designed and checks their security/functional loopholes.
  • 9.
  • 10. What is Quality Assurance • Quality Assurance is known as QA and focuses on preventing defect. • Quality Assurance ensures that the approaches, techniques, methods and processes that are designed for the projects are implemented correctly. • Quality assurance activities monitor and verify that the processes used to manage and create the deliverables have been followed and are operative.
  • 11. What is Quality Control • Quality Control is known as QC and focuses on identifying defect. • QC ensures that the approaches, techniques, methods and processes that are designed in the project are following correctly. • QC activities monitor and verify that the project deliverables meet the defined quality standards.
  • 12. Quality Assurance Quality Control Goal The goal of QA is to improve development and test processes so that defects do not arise when the product is being developed. The goal of QC is to identify defects after a product is developed and before it's released. Responsibility Everyone on the team involved in developing the product is responsible for quality assurance. Quality control is usually the responsibility of a specific team that tests the product for defects. Example Verification is an example of QA Validation/Software Testing is an example of QC As a tool QA is a managerial tool QC is a corrective tool Orientation QA is process oriented QC is product oriented
  • 14. Types of Testing Functional Non-Functional Maintenance Smoke / Sanity Unit Testing Integration Testing User Acceptance System Testing ADHOC Testing Negative Testing Positive Testing Black, White & Gray Box Testing Exploratory Testing So on… Performance Testing Load Testing Stress Testing Endurance Testing Volume Testing Stress Testing Spike Testing Reliability Testing Usability Testing Efficiency Testing API So on… Maintenance Testing Regression Testing
  • 15. • You may find some differences in this classification in different resources as per the requirement, but the general theme remains the same. • There are more than 30 type of testing and still adding. • No need to bother or worry, you will pick them up as you age in the testing industry. • Not all testing types are applicable to all projects but depend on nature & scope of the project. Three General Testing Types
  • 17. Maintenance Testing • Usually maintenance testing is consisting of two parts: ▫ First one is, testing the changes that has been made because of the correction in the system or if the system is extended or because of some additional features added to it. ▫ Second one is regression testing to prove that the rest of the system has not been affected by the maintenance work.
  • 18. Regression Testing • Regression testing is a type of software testing which verifies that software which was previously developed and tested still performs correctly after it was changed or interfaced with other software. • Regression Testing is required when there is a ▫ Change in requirements and code is modified according to the requirement ▫ New feature is added to the software ▫ Defect fixing ▫ Performance issue fix
  • 19. Sanity Testing & Smoke Testing
  • 20. Smoke Testing • Smoke Testing is a kind of Software Testing performed after software build to ascertain that the critical functionalities of the program is working fine. • It is executed "before" any detailed functional or regression tests are executed on the software build. • The purpose is to reject a badly broken application, so that the QA team does not waste time installing and testing the software application.
  • 21. Sanity Testing • Sanity testing, a software testing technique performed by the test team for some basic tests. • Sanity Testing makes sure that the main functionality of the software is working as expected and that nothing is affected after any releases.
  • 22.
  • 23. Black, Gray and White Box Testing
  • 24. Black Box Testing • Black Box testing is a software testing technique that focuses on the analysis of software functionality, versus internal system mechanisms. • Black box testing was developed as a method of analyzing client requirements, specifications and high-level design strategies.
  • 25. White Box Testing • White Box Testing (also known as Code- Based Testing) is a software testing method in which the internal structure, design, implementation of the item being tested is known to the tester. • The tester chooses inputs to exercise paths through the code and determines the appropriate outputs.
  • 26. Gray Box Testing • Gray Box testing is a software testing methodology that involves the combination of white box and black box testing. • It makes use of the straightforward technique of black box testing, as well as the approach for code targeted systems, as in the case of white box testing. • Gray box testing is geared toward finding defects based on improper structure or application use.
  • 27.
  • 29. Unit Testing • Unit Testing is a level of software testing where individual units/ components of a software are tested. • The purpose is to validate that each unit of the software performs as designed. • Unit Testing is normally performed by software developers themselves or their peers. • Unit testing increases confidence in changing/ maintaining code.
  • 30. • Unit Testing is the first level of testing and is performed prior to Integration Testing.
  • 31. Integration Testing • Integration Testing is a level of software testing where individual units are combined and tested as a group. • The purpose of this level of testing is to expose faults in the interaction between integrated units. • Either Developers themselves or independent Testers perform Integration Testing.
  • 32.
  • 33. • Integration Testing is performed after Unit Testing and before System Testing.
  • 34. System Testing • System Testing is a level of the software testing where a complete and integrated software is tested. • The purpose of this test is to evaluate the system’s compliance with the specified requirements. • Normally, independent Testers perform System Testing.
  • 35. • System Testing is performed after Integration Testing and before Acceptance Testing.
  • 37. Acceptance Testing • Acceptance Testing is a level of the software testing where a system is tested for acceptability. • The purpose of this test is to evaluate the system’s compliance with the business requirements and assess whether it is acceptable for delivery. • Who performs it?
  • 38.
  • 39. Internal Acceptance Testing (Alpha Testing) • Internal Acceptance Testing (Also known as Alpha Testing) is performed by members of the organization that developed the software but who are not directly involved in the project (Development or Testing). • Usually, it is the members of Product Management, Sales and/or Customer Support.
  • 40. External Acceptance Testing • External Acceptance Testing is performed by people who are not employees of the organization that developed the software. • Customer Acceptance Testing is performed by the customers of the organization that developed the software. They are the ones who asked the organization to develop the software. • User Acceptance Testing (Also known as Beta Testing) is performed by the end users of the software. They can be the customers themselves or the customers’ customers.
  • 41. AD HOC Testing (Random/Monkey Testing) • AD HOC testing is a method of software testing without any planning and documentation. • Very interesting defects are found in adhoc testing which would never have been found if written test cases existed and were strictly followed. • The success of ad hoc testing depends on the creativity and tenacity of the tester
  • 42. Negative & Positive Testing • Negative Testing is Testing the system or application using negative data (Invalid Data). • Positive Testing is testing process where the system validated against the valid input data.
  • 43.
  • 44. Exploratory Testing • Exploratory testing, is all about discovery, investigation and learning. • Testers may note down ideas about what to test before test execution. The focus of exploratory testing is more on testing as a "thinking" activity.
  • 45. End-To-End Testing • End-to-end testing is a technique used to test whether the flow of an application right from start to finish is behaving as expected. • The purpose of performing end-to-end testing is to identify system dependencies and to ensure that the data integrity is maintained between various system components and systems.
  • 47. Performance Testing • Performance testing is the process of determining the speed or effectiveness of a computer, network, software program or device. • The focus of Performance testing is checking a software program's ▫ Speed - Determines whether the application responds quickly. ▫ Scalability - Determines maximum user load the software application can handle. ▫ Stability - Determines if the application is stable under varying loads.
  • 48.
  • 50. Load Testing • Load testing is a kind of performance testing which determines a system's performance under real-life load conditions. • This testing helps determine how the application behaves when multiple users access it simultaneously. • An Airline website was not able to handle 10000+ users during a festival offer. • $ 4.4 Billion Lost annually due to poor performance
  • 51. Goal of Load Testing • Loading testing identifies the following problems ▫ Response time for each transaction ▫ Performance of System components under various loads ▫ Performance of Database components under different loads ▫ Network delay between the client and the server ▫ Server configuration issues like Web server, application server, database server…etc ▫ Hardware limitation issues like CPU maximization, memory limitations, network bottleneck, etc.
  • 52. Stress Testing • Stress testing is used to test the stability & reliability of the system. • This test mainly determines the system on its robustness and error handling under extremely heavy load conditions. • The goal of stress testing is to analyze the behavior of the system after failure.
  • 53. Load Testing Stress Testing Load Testing is to test the system behavior under normal workload conditions, and it is just testing or simulating with the actual workload Stress testing is to test the system behavior under extreme conditions and is carried out till the system failure. Load testing does not break the system stress testing tries to break the system by testing with overwhelming data or resources.
  • 54. Spike Testing • The testing process in which the system or software is sometimes overloaded and yet at other times the load is decreased tremendously is known as Spike Testing. • Spike testing is mainly done to see how the system reacts with unexpected rise and fall of the load.
  • 55. Purpose of Spike Testing • How Well The System Performs ▫ The main aim of Spike Testing is to access how well the load is managed by the software when it oscillates between two opposite spectrums. • Recovery Time ▫ The software has to recover between two subsequent spikes or peaks as it impacts the performance.
  • 56. Endurance Testing • It simply means testing of enduring capability of the software product. • This type of testing is done with the purpose of examining the software's competency to perform consistently and accurately, over a longer period of time, along with the continuous increment in a load.
  • 57. Volume Testing • Volume testing is a non-functional performance testing, where the software is subjected to a huge volume of data. It is also referred as flood testing. • Volume testing is done to analyze the system performance by increasing the volume of data in the database. • Usually, the volume of data being considered is large. The data can either be the size of an interface file that is being tested or the size of the database.
  • 58. What to Test in Volume Testing • In volume testing, following things need to be tested ▫ Test to check if there is any data loss ▫ Check the system's response time ▫ Check if the data is stored correctly or not ▫ Verify if the data is overwritten without any notification ▫ Check for warning and error messages, whether it comes at all for volume problems ▫ Check whether high volume data affects the speed of processing
  • 59. Scalability Testing • Scalability testing is a performance testing parameter that investigates a system's ability to grow by increasing the workload per user, or the number of concurrent users, or the size of a database. • Scalability testing ensures that an application can handle the projected increase in user traffic, data volume, transaction counts frequency, etc. • It tests the system, processes and databases ability to meet a growing need.
  • 60. Reliability Testing (Probability) • Reliability testing is a type of testing to verify that software is capable of performing a failure-free operation for a specified period of time in a specified environment. • Reliability testing in software assures that the product is fault free and is reliable for its intended purpose. • Example:- The probability that a PC in a store is up and running for eight hours with- out crashing is 99%; this is referred as reliability.
  • 61. Usability Testing • Usability Testing is a type of software testing where, a small set of target end- users, of a software system, "use" it to expose usability defects. • This testing mainly focuses on the user's ease to use the application, flexibility in handling controls and ability of the system to meet its objectives.
  • 62. Usability Testing Process • Usability testing process consists of the following phases:
  • 63. Efficiency Testing • Efficiency testing test the amount of code and testing resources required by a program to perform a particular function. • Software Test Effectiveness covers three aspects: ▫ How much the customer’s requirements are satisfied by the system. ▫ How well the customer specifications are achieved by the system. ▫ How much effort is put in developing the system.
  • 64.
  • 65. API (Application Programming Interface) • It enables communication and data exchange between two separate software systems. • A software system implementing an API contains functions/sub-routines which can be executed by another software system.
  • 67. API Testing • API testing uses software to send calls to the API and get the output. • API testing treats the component under test as a black box. • The goal of API testing is to verify correct performance and error handling of the component prior to its integration into an application.
  • 68. 4 Commonly Used Methods
  • 69. HTTP Response Codes • 200 OK: – This code indicates that the request was made successful. • 201 Created: – This code indicates that request was successful and a resource was created and it validated the success of a PUT or POST request. • 400 Bad Request: – This error code happens with POST and PUT requests, when the data does not pass validation or the passed data is in the wrong format. • 404 Not Found: – This code indicates that the required resource could not be found or not available. • 401 Unauthorized: – This error code indicates that you need to provide authentication before accessing the resource. • 405 Method Not Allowed: – Method Not Allowed error indicates that the requested HTTP method is not supported for this resource. • 409 Conflict: – This code indicates that the user create the same resource twice by which conflict occurs. • 500 Internal Server Error: – Due to server side issue this error code occurs.
  • 70. Common Issues in API • Delayed in API Response time • To verify when API doesn’t return any response data. • Difficulty in connecting and getting response from API • Output response should be checked on the basis of provided input request. • Verification of the API whether it triggers some other event or request another API • Verification of the API whether it is updating any data structure
  • 71.
  • 72.
  • 74.
  • 75. Test Plan • A test plan is a detailed document that outlines the test strategy, Testing objectives, resources required for testing, test schedule, test estimation and test deliverables. • The test plan serves as a blueprint to conduct software testing activities as a defined process which is minutely monitored and controlled by the test manager.
  • 76. Importance of Test Plan • Test Plan helps us determine the effort needed to validate the quality of the application under test. • Help people outside the test team such as developers, business managers, customers understand the details of testing. • Test Plan guides our thinking. It is like a rule book, which needs to be followed. • Important aspects like test estimation, test scope, test strategy are documented in Test Plan, so it can be reviewed by Management Team and re-used for other projects.
  • 77. How To Write Test Plan
  • 78. Test Strategy • Test strategy is a plan for defining the testing approach, and it answers to questions like what you want to get done and how you are going to accomplish it. • Test strategy is a guideline to be followed to achieve the test objective and execution of test types mentioned in the testing plan. • It deals with test objective, test environment, test approach, automation tools and strategy, contingency plan, and risk analysis
  • 79. Test Strategy Components Test Strategy Test Environment Scope & ObjectivesTest Management Test Execution Defect Management Team & Resources Test Process Test Methodology
  • 80. What is Agile Methodology • AGILE methodology is a practice that promotes continuous iteration of develop- ment and testing throughout the software develop- ment lifecycle of the project. • Both development and testing activities are con- current unlike the Waterfall model
  • 81. What is Waterfall Methodology • The waterfall model is a sequential (non- iterative) design process. • Used in software development processes, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of conception, initiation, analysis, design, construction, testing, production /implementation and maintenance.
  • 82. What is Waterfall Methodology
  • 83. Software Development LifeCycle Foundation of the requirement analysis. Defining project goals as functions. Design the product’s optimal architecture. Build the product and create programming code Check for errors, bugs and other issues. Release into the marketplace.