SlideShare a Scribd company logo
1 of 40
Basic Guide to Manual Testing
By
Hiral Gosani
Software tester
Virtueinfo Soft web pvt.ltd
https://www.virtueinfo.com
/
Welcome
 Software Testing
 Objective of software testing
 Testing Life Cycle
 Testing Levels
• Functional Testing
• Non Functional testing
 Testing Types
• Manual Testing
• Automation Testing
INDEX
Software Testing
To verify that it satisfies specified requirements
or identify differences between expected and
actual results.
To exercising a program with the specific intent of
finding errors prior to delivery to the end user.
According to ANSI/IEEE 1059 standard, Testing can be
defined as A process of analyzing a software item to detect
the differences between existing and required conditions
(that is defects/errors/bugs) and to evaluate the features
of the software item.
Software Testing [cont..]
 Who does testing?
Software Developer
Software Tester
Project Leader/Manager
End User
Software Testing [cont..]
Tester
Must learn about theMust learn about the
system,system,but, will attempt tobut, will attempt to
break Itbreak It and, is driven by quality
Developer
Understands the system but,
will test "gently "and, is driven
by "delivery”
Objectives of software testing
Major objectives for performing Software Testing are:
 To ensure that the solution meets the business and user
requirements;
 To catch errors that can be bugs or defects;
 To determining user acceptability;
 To ensuring that a system is ready for use;
 To gaining confidence that it works;
 Evaluating the capabilities of a system to show that a
system performs as intended and verifying
documentation.
Difference between defect, error, bug, failure and fault
“A mistake in coding is called
error[mistake] ,
error found by tester is called
defect,
defect accepted by development
team then it is called bug ,
build does not meet the
requirements then it Is failure.”
Bug Life Cycle
Bug Life Cycle
Software Testing Verification and Validation
Testing life cycle
Software Testing Life Cycle phases
 Requirements Analysis
 Test Planning
 Test Analysis
 Test Design
 Construction and verification
 Testing Cycles
 Final Testing and Implementation
 Post Implementation
Software testing has its own life cycle that intersects with every stage of the
SDLC. The basic requirements in software testing life cycle are to deal with
software testing methodologies like Manual, Automated and Performance
testing. Let’s see each phase of STLC in details:
Software Testing Life Cycle phases[cont..]
(1) Requirements Analysis
 In this phase Software testers analyze the customer requirements and work
with developers during the design phase to see which requirements are
testable and how they are going to test those requirements.
 It is very important to start testing activities from the
requirements phase itself because the cost of fixing
defect is very less if it is found in requirements phase
rather than in future phases.
(2) Test Planning
In this phase all the planning about testing is done like what needs to be
tested like,
 How the testing will be done,
 Test strategy to be followed,
 What will be the test environment,
Software Testing Life Cycle phases[cont..]
 What test methodologies will be followed,
 Hardware and software availability,
 Resources, risks etc.
A high level Test plan document is created which includes
all the planning inputs mentioned above and circulated
to the stakeholders.
(3) Test Analysis
 In this phase we need to dig deeper into project and figure out what testing
needs to be carried out in each SDLC phase.
 Automation activities are also decided in this phase
 Non functional testing areas (Stress and performance testing) are also
analyzed
Software Testing Life Cycle phases[cont..]
(4) Test Design
 In this phase various black-box and white-box test
design techniques are used to design the test
cases for testing.
 Testers start writing test cases by following
those design techniques.
 Automation scripts also needs to written
in this phase.
(5) Test Construction and Verification
 In this stage we need to done all test activities
 Complete the all test plans and test cases.
 In this stage need to done stress, performance test case plans.
Software Testing Life Cycle phases[cont..]
(6) Testing Cycles: Test Execution and Bug Reporting
In this stage we need to done test cycles until test cases are executed without
errors. And our test plans is reached.
Software Testing Life Cycle phases[cont..]
(7) Final Testing and Implementation
 In this phase the final testing is done for functional testing and non functional
testing.
 The software is also verified in the production kind of environment. Final test
execution reports and documents are prepared in this phase.
(8) Post Implementation
 In this phase the test environment is cleaned up and restored to default state,
the process review meeting’s are done and lessons learns are documented.
 A document is prepared to cope up similar problems in future releases
Testing Levels
Software development life cycle models there are defined phases like
requirement gathering and analysis, design, coding or implementation,
testing and deployment. Each phase goes through the testing. Hence there
are various levels of testing.
(A) Functional Testing:
Functional testing is to testing the functionality of the software application
under test. Basically, it is to check the basic functionality mentioned in the
functional specification document. Also check whether software application is
meeting the user expectations.
(B) Non Functional Testing:
Non-functional testing the quality characteristics of the component or system
is tested. Non-functional refers to aspects of the software that may not be
related to a specific function or user action such as scalability or security.
E.g. How many people can log in at once? Non-functional testing is also
performed at all levels like functional testing.
Various levels of functional Testing
(1) Unit Testing:
Unit testing is a method by which individual units of source code are tested
determine if they are fit for use. A unit is the smallest testable part of an
application like functions/procedures, classes, interfaces.
(2) Component Testing:
Component testing is also known as module and program testing. It finds the
defects in the module and verifies the functioning of software. Component
testing is done by the tester.
(3) Integration testing :
Integration testing tests integration or interfaces between components,
interactions to different parts of the system such as an operating system, file
system and hardware or interfaces between systems.
Various levels of functional Testing[cont..]
a) Big bang integration testing:
In Big Bang integration testing all components or modules
are integrated simultaneously, after which everything is
tested as a whole.
b) Top down:
Testing takes place from top to bottom, following the
control flow or architectural structure A-B-D-E
c) Bottom up:
Testing takes place from the bottom of the control flow
upwards. Components or systems are substituted by drivers.
E-D-B-A
d) Functional incremental:
Integration and testing takes place on the basis of the
functions and in the functional specification.
A-D-G-C-E
Various levels of functional Testing[cont..]
(4) Component Integration Testing:
 To test the interactions between software components
 The software components themselves may be specified
at different times by different specification groups, yet
the integration of all of the pieces must work together.
(5) System Integration Testing[SIT]:
 To tests the interactions between different systems. It verifies the proper execution
of Software components an proper interfacing between components within the
solution.
 The objective of SIT Testing is to validate that all software module dependencies
are functionally correct and that data integrity is maintained between separate
modules for the entire solution.
Various levels of functional Testing[cont..]
(6) Sanity Testing:
 Sanity testing is carry out to check whether the bugs reported in previous
build are fixed & there is regression introduced due to these fixes
 The main aim of Sanity testing to check the planned functionality is working
as expected. Instead of doing whole regression testing the Sanity testing is
perform.
(7) Smoke Testing:
 Smoke testing covers most of the major functions of the software but none
of them in depth. The result of this test is used to decide whether to proceed
with further testing.
 If the smoke test passes, go ahead with further testing. If it fails, halt further
tests and ask for a new build with the required fixes. If an application is badly
broken, detailed testing might be a waste of time and effort.
Various levels of functional Testing[cont..]
(8) Regression testing:
 During confirmation testing the defect got fixed and
that part of the application started working as
intended.
 But there might be a possibility that the fix may have
introduced or uncovered a different defect
elsewhere in the software.
 The way to detect these ‘unexpected side-effects’ of
fixes is to do regression testing. The purpose of a
regression testing is to verify that modifications in
the software or the environment have not caused
any unintended adverse side effects and that the
system still meets its requirements.
 Regression testing are mostly automated because in
order to fix the defect the same test is carried out
again and again and it will be very tedious to do it
manually. Regression tests are executed whenever
the software changes, either as a result of fixes or
new or changed functionality.
Various levels of functional Testing[cont..]
(9) Acceptance Testing:
This is arguably the most importance type of testing as it is conducted by the
Quality Assurance Team who will gauge whether the application meets the
intended specifications and satisfies the client’s requirements. The goal of
acceptance testing is to establish confidence in the system. Acceptance testing is
most often focused on a validation type testing.
a) Alpha Testing:
This test takes place at the developer’s site. Alpha testing is final testing before
the software is released to the general public. It has two phases:
In the first phase of alpha testing, the software is
tested by in-house developers.
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.
Various levels of functional Testing[cont..]
b) Beta Testing:
 It is also known as field testing. It takes place at customer’s site.
 It sends the system to users who install it and use it under real-world
working conditions.
 The goal of beta testing is to place your application in the hands of real users
outside of your own engineering team to discover any flaws or issues from
the user’s perspective that you would not want to have in your final, released
version of the application.
Various levels of Non Functional Testing
(1) Load Testing:
 Load testing is performed to determine a system’s behaviour under both normal
and at peak conditions.
 It helps to identify the maximum operating capacity of an application as well as
any bottlenecks and determine which element is causing degradation.
E.g. If the number of users are increased then how much CPU, memory will be
consumed, what is the network and bandwidth response time.
Load testing involves simulating real-life user load for the target application. It
helps you determine how your application behaves when multiple users hits it
simultaneously.
(2) Performance Testing:
 Performance testing is testing that is performed, to determine how fast some
aspect of a system performs under a particular workload.
 It can serve different purposes like it can demonstrate that the system meets
performance criteria.
Various levels of Non Functional Testing[cont..]
 It can compare two systems to find which performs better.
 This process can involve quantitative tests done in a lab,
such as measuring the response time or the number of MIPS
at which a system functions.
(3) Stress Testing:
 It is a form of software testing that is used to determine the
stability of a given system.
 It put greater emphasis on robustness, availability, and
error handling under a heavy load, rather than on what
would be considered correct behaviour under normal
circumstances.
 The goals of such tests may be to ensure the software does
not crash in conditions of insufficient computational
resources.
Various levels of Non Functional Testing[cont..]
(4) Usability testing:
 usability testing basically the testers tests the ease with which the user
interfaces can be used. It tests that whether the application or the product
built is user-friendly or not.
 Usability testing also reveals whether users feel comfortable with your
application or Web site according to different parameters - the flow,
navigation and layout.
(5) Security testing:
 Security testing is basically a type of software testing that’s
done to check whether the application or the product is
secured or not.
 It checks to see if the application is
vulnerable to attacks, if anyone hack the system or
login to the application without any authorization.
Differences of Black box testing White Box testing and Grey box testing
Types of Testing
(1) Manual Testing:
 This type includes the testing of the Software manually.
 i.e. without using any automated tool or any script.
 In this type the tester takes over the role of an end user and test the Software to
identify any un-expected behaviour or bug.
 There are different stages for manual testing like unit testing, Integration testing,
System testing and User Acceptance testing.
 Testers use test plan, test cases or test scenarios to test the Software to ensure
the completeness of testing. Manual testing also includes exploratory testing as
testers explore the software to identify errors in it.
- Waterfall model
- V Model
- Spiral Model
Types of Testing[cont..]
(2) Automation testing
 Automation testing which is also known as
Test Automation, is when the tester writes
scripts and uses another software to test the
software.
 This process involves automation of a manual
process. Automation Testing is used to re-run
the test scenarios that were performed
manually, quickly and repeatedly.
 Apart from regression testing, Automation
testing is also used to test the application
from load, performance and stress point of
view.
 It increases the test coverage; improve
accuracy, saves time and money in
comparison to manual testing.
Types of Testing[cont..]
 So, Now days we can get lots of Software Testing Tools in the market.
Selection of tools is totally based on the project requirements & commercial
(Proprietary/Commercial tools) or free tools (Open Source Tools) you are
interested.
 Off Course, free Testing Tools may have some limitation in the features list of
the product, so it’s totally based on what are you looking for & is that your
requirement fulfil in free version or go for paid Software Testing Tools.
The tools are divided into different categories as follows:
Test Management tools Functional Testing Tools Load Testing Tools
HP Quality Center/ALM QuickTestPro HPLoadRunner
SoapTest ANTS - Advanced.NET
testing system
Selenium Jmeter
When to Stop Testing?
Unlike when to start testing it is difficult to determine when to stop testing,
as testing is a never ending process and no one can say that any software is
100% tested. Following are the aspects which should be considered to stop
the testing:
 Testing Deadlines.
 Completion of test case execution.
 Completion of Functional and code coverage to a certain point.
 Bug rate falls below a certain level and no high priority bugs are identified.
 Management decision.
QA doesn't make software but makes it better..
Basic Guide to Manual Testing

More Related Content

What's hot

Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Ankit Prajapati
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testingdidev
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1Raghu Kiran
 
functional testing
functional testing functional testing
functional testing bharathanche
 
Software testing life cycle
Software testing life cycleSoftware testing life cycle
Software testing life cycleGaruda Trainings
 
Quality Assurance and Software Testing
Quality Assurance and Software TestingQuality Assurance and Software Testing
Quality Assurance and Software Testingpingkapil
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testingSoftheme
 
Unit Testing vs Integration Testing
Unit Testing vs Integration TestingUnit Testing vs Integration Testing
Unit Testing vs Integration TestingRock Interview
 
Types of Software Testing | Edureka
Types of Software Testing | EdurekaTypes of Software Testing | Edureka
Types of Software Testing | EdurekaEdureka!
 
Top ten software testing tools
Top ten software testing toolsTop ten software testing tools
Top ten software testing toolsJanBask Training
 
Software Testing
Software TestingSoftware Testing
Software TestingSengu Msc
 

What's hot (20)

Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testing
 
Introduction & Manual Testing
Introduction & Manual TestingIntroduction & Manual Testing
Introduction & Manual Testing
 
Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
 
Types of testing
Types of testingTypes of testing
Types of testing
 
functional testing
functional testing functional testing
functional testing
 
Test cases
Test casesTest cases
Test cases
 
Software testing life cycle
Software testing life cycleSoftware testing life cycle
Software testing life cycle
 
Quality Assurance and Software Testing
Quality Assurance and Software TestingQuality Assurance and Software Testing
Quality Assurance and Software Testing
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testing
 
Unit Testing vs Integration Testing
Unit Testing vs Integration TestingUnit Testing vs Integration Testing
Unit Testing vs Integration Testing
 
Types of Software Testing | Edureka
Types of Software Testing | EdurekaTypes of Software Testing | Edureka
Types of Software Testing | Edureka
 
Software testing
Software testingSoftware testing
Software testing
 
Top ten software testing tools
Top ten software testing toolsTop ten software testing tools
Top ten software testing tools
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Types of performance testing
Types of performance testingTypes of performance testing
Types of performance testing
 

Similar to Basic Guide to Manual Testing

SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTINGacemindia
 
Software testing sengu
Software testing  senguSoftware testing  sengu
Software testing senguSengu Msc
 
Software testing
Software testingSoftware testing
Software testingSengu Msc
 
Software testing
Software testingSoftware testing
Software testingSengu Msc
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basicRohit Singh
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingRajesh-QA
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingANKUR-BA
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingSachin-QA
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingVidya-QA
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingFayis-QA
 
Real Time software Training in Nagercoil
Real Time software Training in NagercoilReal Time software Training in Nagercoil
Real Time software Training in Nagercoiljclick2
 
Software testing
Software testingSoftware testing
Software testingEng Ibrahem
 
Testing strategies in Software Engineering
Testing strategies in Software EngineeringTesting strategies in Software Engineering
Testing strategies in Software EngineeringMuhammadTalha436
 
11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil Barot11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil BarotHarshil Barot
 

Similar to Basic Guide to Manual Testing (20)

SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Software testing sengu
Software testing  senguSoftware testing  sengu
Software testing sengu
 
UNIT 2.pptx
UNIT 2.pptxUNIT 2.pptx
UNIT 2.pptx
 
Software test life cycle
Software test life cycleSoftware test life cycle
Software test life cycle
 
CTFL Module 02
CTFL Module 02CTFL Module 02
CTFL Module 02
 
Sftwre engg.testng
Sftwre engg.testngSftwre engg.testng
Sftwre engg.testng
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 
Day1
Day1Day1
Day1
 
Real Time software Training in Nagercoil
Real Time software Training in NagercoilReal Time software Training in Nagercoil
Real Time software Training in Nagercoil
 
Software testing
Software testingSoftware testing
Software testing
 
Testing strategies in Software Engineering
Testing strategies in Software EngineeringTesting strategies in Software Engineering
Testing strategies in Software Engineering
 
Software testing
Software testingSoftware testing
Software testing
 
11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil Barot11 steps of testing process - By Harshil Barot
11 steps of testing process - By Harshil Barot
 

Recently uploaded

Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 

Recently uploaded (20)

Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 

Basic Guide to Manual Testing

  • 1. Basic Guide to Manual Testing By Hiral Gosani Software tester Virtueinfo Soft web pvt.ltd https://www.virtueinfo.com / Welcome
  • 2.  Software Testing  Objective of software testing  Testing Life Cycle  Testing Levels • Functional Testing • Non Functional testing  Testing Types • Manual Testing • Automation Testing INDEX
  • 3. Software Testing To verify that it satisfies specified requirements or identify differences between expected and actual results. To exercising a program with the specific intent of finding errors prior to delivery to the end user. According to ANSI/IEEE 1059 standard, Testing can be defined as A process of analyzing a software item to detect the differences between existing and required conditions (that is defects/errors/bugs) and to evaluate the features of the software item.
  • 4. Software Testing [cont..]  Who does testing? Software Developer Software Tester Project Leader/Manager End User
  • 5. Software Testing [cont..] Tester Must learn about theMust learn about the system,system,but, will attempt tobut, will attempt to break Itbreak It and, is driven by quality Developer Understands the system but, will test "gently "and, is driven by "delivery”
  • 6.
  • 7.
  • 8.
  • 9.
  • 10. Objectives of software testing Major objectives for performing Software Testing are:  To ensure that the solution meets the business and user requirements;  To catch errors that can be bugs or defects;  To determining user acceptability;  To ensuring that a system is ready for use;  To gaining confidence that it works;  Evaluating the capabilities of a system to show that a system performs as intended and verifying documentation.
  • 11. Difference between defect, error, bug, failure and fault “A mistake in coding is called error[mistake] , error found by tester is called defect, defect accepted by development team then it is called bug , build does not meet the requirements then it Is failure.”
  • 16. Software Testing Life Cycle phases  Requirements Analysis  Test Planning  Test Analysis  Test Design  Construction and verification  Testing Cycles  Final Testing and Implementation  Post Implementation Software testing has its own life cycle that intersects with every stage of the SDLC. The basic requirements in software testing life cycle are to deal with software testing methodologies like Manual, Automated and Performance testing. Let’s see each phase of STLC in details:
  • 17. Software Testing Life Cycle phases[cont..] (1) Requirements Analysis  In this phase Software testers analyze the customer requirements and work with developers during the design phase to see which requirements are testable and how they are going to test those requirements.  It is very important to start testing activities from the requirements phase itself because the cost of fixing defect is very less if it is found in requirements phase rather than in future phases. (2) Test Planning In this phase all the planning about testing is done like what needs to be tested like,  How the testing will be done,  Test strategy to be followed,  What will be the test environment,
  • 18. Software Testing Life Cycle phases[cont..]  What test methodologies will be followed,  Hardware and software availability,  Resources, risks etc. A high level Test plan document is created which includes all the planning inputs mentioned above and circulated to the stakeholders. (3) Test Analysis  In this phase we need to dig deeper into project and figure out what testing needs to be carried out in each SDLC phase.  Automation activities are also decided in this phase  Non functional testing areas (Stress and performance testing) are also analyzed
  • 19. Software Testing Life Cycle phases[cont..] (4) Test Design  In this phase various black-box and white-box test design techniques are used to design the test cases for testing.  Testers start writing test cases by following those design techniques.  Automation scripts also needs to written in this phase. (5) Test Construction and Verification  In this stage we need to done all test activities  Complete the all test plans and test cases.  In this stage need to done stress, performance test case plans.
  • 20. Software Testing Life Cycle phases[cont..] (6) Testing Cycles: Test Execution and Bug Reporting In this stage we need to done test cycles until test cases are executed without errors. And our test plans is reached.
  • 21. Software Testing Life Cycle phases[cont..] (7) Final Testing and Implementation  In this phase the final testing is done for functional testing and non functional testing.  The software is also verified in the production kind of environment. Final test execution reports and documents are prepared in this phase. (8) Post Implementation  In this phase the test environment is cleaned up and restored to default state, the process review meeting’s are done and lessons learns are documented.  A document is prepared to cope up similar problems in future releases
  • 22. Testing Levels Software development life cycle models there are defined phases like requirement gathering and analysis, design, coding or implementation, testing and deployment. Each phase goes through the testing. Hence there are various levels of testing. (A) Functional Testing: Functional testing is to testing the functionality of the software application under test. Basically, it is to check the basic functionality mentioned in the functional specification document. Also check whether software application is meeting the user expectations. (B) Non Functional Testing: Non-functional testing the quality characteristics of the component or system is tested. Non-functional refers to aspects of the software that may not be related to a specific function or user action such as scalability or security. E.g. How many people can log in at once? Non-functional testing is also performed at all levels like functional testing.
  • 23. Various levels of functional Testing (1) Unit Testing: Unit testing is a method by which individual units of source code are tested determine if they are fit for use. A unit is the smallest testable part of an application like functions/procedures, classes, interfaces. (2) Component Testing: Component testing is also known as module and program testing. It finds the defects in the module and verifies the functioning of software. Component testing is done by the tester. (3) Integration testing : Integration testing tests integration or interfaces between components, interactions to different parts of the system such as an operating system, file system and hardware or interfaces between systems.
  • 24. Various levels of functional Testing[cont..] a) Big bang integration testing: In Big Bang integration testing all components or modules are integrated simultaneously, after which everything is tested as a whole. b) Top down: Testing takes place from top to bottom, following the control flow or architectural structure A-B-D-E
  • 25. c) Bottom up: Testing takes place from the bottom of the control flow upwards. Components or systems are substituted by drivers. E-D-B-A d) Functional incremental: Integration and testing takes place on the basis of the functions and in the functional specification. A-D-G-C-E
  • 26. Various levels of functional Testing[cont..] (4) Component Integration Testing:  To test the interactions between software components  The software components themselves may be specified at different times by different specification groups, yet the integration of all of the pieces must work together. (5) System Integration Testing[SIT]:  To tests the interactions between different systems. It verifies the proper execution of Software components an proper interfacing between components within the solution.  The objective of SIT Testing is to validate that all software module dependencies are functionally correct and that data integrity is maintained between separate modules for the entire solution.
  • 27. Various levels of functional Testing[cont..] (6) Sanity Testing:  Sanity testing is carry out to check whether the bugs reported in previous build are fixed & there is regression introduced due to these fixes  The main aim of Sanity testing to check the planned functionality is working as expected. Instead of doing whole regression testing the Sanity testing is perform. (7) Smoke Testing:  Smoke testing covers most of the major functions of the software but none of them in depth. The result of this test is used to decide whether to proceed with further testing.  If the smoke test passes, go ahead with further testing. If it fails, halt further tests and ask for a new build with the required fixes. If an application is badly broken, detailed testing might be a waste of time and effort.
  • 28. Various levels of functional Testing[cont..] (8) Regression testing:  During confirmation testing the defect got fixed and that part of the application started working as intended.  But there might be a possibility that the fix may have introduced or uncovered a different defect elsewhere in the software.  The way to detect these ‘unexpected side-effects’ of fixes is to do regression testing. The purpose of a regression testing is to verify that modifications in the software or the environment have not caused any unintended adverse side effects and that the system still meets its requirements.  Regression testing are mostly automated because in order to fix the defect the same test is carried out again and again and it will be very tedious to do it manually. Regression tests are executed whenever the software changes, either as a result of fixes or new or changed functionality.
  • 29. Various levels of functional Testing[cont..] (9) Acceptance Testing: This is arguably the most importance type of testing as it is conducted by the Quality Assurance Team who will gauge whether the application meets the intended specifications and satisfies the client’s requirements. The goal of acceptance testing is to establish confidence in the system. Acceptance testing is most often focused on a validation type testing. a) Alpha Testing: This test takes place at the developer’s site. Alpha testing is final testing before the software is released to the general public. It has two phases: In the first phase of alpha testing, the software is tested by in-house developers. 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.
  • 30. Various levels of functional Testing[cont..] b) Beta Testing:  It is also known as field testing. It takes place at customer’s site.  It sends the system to users who install it and use it under real-world working conditions.  The goal of beta testing is to place your application in the hands of real users outside of your own engineering team to discover any flaws or issues from the user’s perspective that you would not want to have in your final, released version of the application.
  • 31. Various levels of Non Functional Testing (1) Load Testing:  Load testing is performed to determine a system’s behaviour under both normal and at peak conditions.  It helps to identify the maximum operating capacity of an application as well as any bottlenecks and determine which element is causing degradation. E.g. If the number of users are increased then how much CPU, memory will be consumed, what is the network and bandwidth response time. Load testing involves simulating real-life user load for the target application. It helps you determine how your application behaves when multiple users hits it simultaneously. (2) Performance Testing:  Performance testing is testing that is performed, to determine how fast some aspect of a system performs under a particular workload.  It can serve different purposes like it can demonstrate that the system meets performance criteria.
  • 32. Various levels of Non Functional Testing[cont..]  It can compare two systems to find which performs better.  This process can involve quantitative tests done in a lab, such as measuring the response time or the number of MIPS at which a system functions. (3) Stress Testing:  It is a form of software testing that is used to determine the stability of a given system.  It put greater emphasis on robustness, availability, and error handling under a heavy load, rather than on what would be considered correct behaviour under normal circumstances.  The goals of such tests may be to ensure the software does not crash in conditions of insufficient computational resources.
  • 33. Various levels of Non Functional Testing[cont..] (4) Usability testing:  usability testing basically the testers tests the ease with which the user interfaces can be used. It tests that whether the application or the product built is user-friendly or not.  Usability testing also reveals whether users feel comfortable with your application or Web site according to different parameters - the flow, navigation and layout. (5) Security testing:  Security testing is basically a type of software testing that’s done to check whether the application or the product is secured or not.  It checks to see if the application is vulnerable to attacks, if anyone hack the system or login to the application without any authorization.
  • 34. Differences of Black box testing White Box testing and Grey box testing
  • 35. Types of Testing (1) Manual Testing:  This type includes the testing of the Software manually.  i.e. without using any automated tool or any script.  In this type the tester takes over the role of an end user and test the Software to identify any un-expected behaviour or bug.  There are different stages for manual testing like unit testing, Integration testing, System testing and User Acceptance testing.  Testers use test plan, test cases or test scenarios to test the Software to ensure the completeness of testing. Manual testing also includes exploratory testing as testers explore the software to identify errors in it. - Waterfall model - V Model - Spiral Model
  • 36. Types of Testing[cont..] (2) Automation testing  Automation testing which is also known as Test Automation, is when the tester writes scripts and uses another software to test the software.  This process involves automation of a manual process. Automation Testing is used to re-run the test scenarios that were performed manually, quickly and repeatedly.  Apart from regression testing, Automation testing is also used to test the application from load, performance and stress point of view.  It increases the test coverage; improve accuracy, saves time and money in comparison to manual testing.
  • 37. Types of Testing[cont..]  So, Now days we can get lots of Software Testing Tools in the market. Selection of tools is totally based on the project requirements & commercial (Proprietary/Commercial tools) or free tools (Open Source Tools) you are interested.  Off Course, free Testing Tools may have some limitation in the features list of the product, so it’s totally based on what are you looking for & is that your requirement fulfil in free version or go for paid Software Testing Tools. The tools are divided into different categories as follows: Test Management tools Functional Testing Tools Load Testing Tools HP Quality Center/ALM QuickTestPro HPLoadRunner SoapTest ANTS - Advanced.NET testing system Selenium Jmeter
  • 38. When to Stop Testing? Unlike when to start testing it is difficult to determine when to stop testing, as testing is a never ending process and no one can say that any software is 100% tested. Following are the aspects which should be considered to stop the testing:  Testing Deadlines.  Completion of test case execution.  Completion of Functional and code coverage to a certain point.  Bug rate falls below a certain level and no high priority bugs are identified.  Management decision.
  • 39. QA doesn't make software but makes it better..