0% found this document useful (0 votes)
10 views106 pages

Manual Testing

The document provides a comprehensive overview of manual testing, covering basic concepts, types of software testing, and the software development life cycle. It details various testing methodologies, including the Waterfall and Spiral models, and emphasizes the importance of quality assurance and control. Additionally, it discusses testing techniques, test case design, defect management, and the documentation involved in the testing process.

Uploaded by

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

Manual Testing

The document provides a comprehensive overview of manual testing, covering basic concepts, types of software testing, and the software development life cycle. It details various testing methodologies, including the Waterfall and Spiral models, and emphasizes the importance of quality assurance and control. Additionally, it discusses testing techniques, test case design, defect management, and the documentation involved in the testing process.

Uploaded by

aritramondal7099
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

MANUAL TESTING

Basic concepts of testing


• Testing concepts (theory)
• Software testing concepts (practical)
• Agile process (agile tool)
What is software?
• Collection of computer program to perform a
task
System software
Application software
Programming software
What is software testing?
• Part of software development
• Activity to detect and identify defects
• Release a quality product
Types of software testing
• Manual testing
• Automation testing
What is software quality?
• Bug free
• Delivered on time
• Within budget
• Meets requirements
• maintainable
Product and Project
• Project is the process that is undergone to
fulfil the customer’s requirements
• Product is the application that has been
developed for the customer.
Why we need testing?
Reasons for bugs
• Miscommunication
• Software complexity
• Program errors
• Changing requirements
• Lack of skilled test
Software development life cycle
• Process used by software industry to design
and develop and test software
• The three P’s are the pillar of any company
People
Process
Product
Software development life cycle
• Requirement analysis
• Design
• Development
• Testing
• Maintenance
Waterfall model
• It is a linear model
• It is very old and traditional
Advantages
• Quality of product will be good
• Since requirement changes are not allowed
chance of bug is less
• Initial investment is less
• Applicable for small projects
Disadvantages
• Requirement changes not allowed in between
• Defect in requirement will be affected in all
phases
• Reworking defect leads to high investment
• Testing starts only after coding
Spiral model
• It is iterative
• Overcomes drawback of waterfall model
• Follow when there is dependency of modules
• New software released in each cycle
• Software is released in multiple version
Advantages
• Testing is done in every cycle
• Customer uses software in each cycle
• Requirement changes are allowed after every
cycle
Disadvantages
• Requirement changes are not allowed in
between a cycle
• Every cycle looks like waterfall model
• No testing in requirement and design phase
• Prototype --- blue print of software
• Module ---- each part in development phase

gmail Bank

Login Login

Compose mail Check balance

Sent mail Fund transfer


V model
• Static testing
testing projects related to documents

• Dynamic testing
testing actual software
Verification/validation
verification validation
• Checks whether the product • Checks whether we are
is built right building the right product
• Focus on documentation • Focus on software
• Verification involves • Involves actual testing
 Reviews  Unit testing
 Walkthrough  Integration testing
 inspections  System testing
 UAT testing
Advantages
• Testing in each and every phase is involved
Disadvantages
• Documentation is more
• Initial investment is more
Static testing techniques
• Review
• Walkthrough
• Inspection
Review
• To check correction in document
Requirement review
Design review
Code review
Test plan review
Test case review
Walkthrough
• It is an informal review
• There is no plan
• Author reads the review
• No meeting is planned
Inspection
• It is very formal
• There will be a meeting with reader, writer
and moderator
• There will be a proper plan via email
Dynamic testing techniques
• Unit testing --- testing the testing
• Integration testing --- data flow between the
modules
• System testing --- overall function is tested
• UAT testing --- checking from user
environment
QA vs QC
Quality assurance Quality control
• Process related • Actual testing of software
• Focuses on building quality • Focuses on testing quality
• Prevents the defects • Detecting defects
• Process oriented • Product oriented
• Entire life cycle in every • Testing part in SDLC
phase
QE --- Quality engineering
• Automation testing done by quality engineer
• Writing code to test the software
Levels of software testing
• Unit testing
• Integration testing
• System testing
• UAT testing
Unit testing
• It is done on a single module of software
• It is a white box testing
• It is conducted by developers
Techniques used in unit testing
• Basis path testing
• Control structure testing
• Conditional coverage
• Loops coverage
• Mutation testing
Integration testing
• Perform between modules
• Checks data communication between modules
• It is a white box testing
Types of integration testing
• Incremental integration testing
adds modules and test data flow
incrementally
Top down
Bottom up
• Non incremental integration testing
adds all modules in single shot

• Sandwich approach
combination of incremental and non
incremental testing
Disadvantages
• We might miss data flow in the modules
• Will be difficult in identifying the defect
System testing
• Overall functionality is tested
• Black box testing
• Conducted by testing team
• Customer requirements must be known
 Focuses on:
 User interface testing (GUI)
 Functional testing
 Non functional testing
 Usability testing
User acceptance testing
• After system testing UAT conducts acceptance
testing in two levels
Alpha testing – customer will test in
development environment
Beta testing – test in customer’s environment
System testing
• Testing according to customer environment
GUI testing
Usability testing
Functional testing
Non functional
Usability testing
• It validates the application
• Check how easy it is for end users to use the
application
Functional testing
• Functionality means behaviour of application
• It tell how features must work
– Object properties testing
– Database testing
– Error handling
– Calculation testing
– Link existence
– Cookies and sessions
Non functional testing
• Performance testing
– Load testing
– Stress testing
– Volume testing
• Security testing
• Recovery testing
• Compatibility testing
• Configuration testing
• Installation testing
• Sanitation testing
Software testing terminology
Regression testing
• Testing is conducted on modified build and
build that is impacted with bugs on other
buid.
Unit testing
Regional testing
Full regression testing
Retesting
• Test is done when there is a bug
• Tester closes the bug if worked or sends it to
developer
Retesting vs regression testing

Admin

Purchase

Finance
Testing that comes after build release

Smoke testing Sanity testing


• Done to check if build is • Checks main funtions
stable • Done by testers alone
• Done by developers and • Relatively stable
testers • Done on stable builds
• Stable/unstable • Part of regression testing
• Done on initial builds • Planned when there is no
• Part of basic testing time for testing
• Each time new build is
released
Exploratory testing
• Explore the application, understand
completely and then test
• Understand application and then testing is
done
• Application is ready without any requirements
• Done by test engineer
Adhoc testing
• Testing application without any test cases or
requirements
• Informal testing type
• Tester must have knowledge of application
Monkey/Gorilla testing
• Testing application without any test cases or
requirements
• Informal testing type
• Tester has no knowledge of application
• Suitable for gaming application
Adhoc testing Monkey testing Exploratory testing

No documentation No documentation No documentation

No plan No plan No plan

Informal testing Informal testing Informal testing

Tester must know Tester need not know Tester need not know
applications functionality applications functionality applications functionality

Random testing Random testing Random testing

Finds out corner defects Finds out corner defects Intension to learn or
explore application
Any application Gaming application Any new application
Positive testing
• Testing done with valid input
• Application responds to positive input
Negative testing
• Testing done with invalid input
• Application responds to negative input
End to end testing
• Testing overall functionality of system
including the data integration among all the
modules
Delete
customer
Add
Login Logout
customer

Edit
customer
Globalization testing
• Ensures that the software runs in any
environment
• It supports any language
• Supports currency formats, mobile number
formats and address formats
• Eg: Facebook application
Localization testing
• Checks software for specific environment
• Supports specific language
• Supports specific region
• Eg: QQ application
Software test design techniques
• Prepare data for testing
Data – data used for testing
Coverage – covers all the test scenarios in data
preparation
Advantages
reduces data and there will be more
coverage
Test design techniques
• Test design techniques help to design better
cases
• Reduces number of test cases to be executed
Techniques used
• Equivalence class partitioning
• Boundary value analysis
• Decision table based testing
• State transition
• Error guessing
Equivalence class partitioning(ECP)
• Partitions data into multiple classes
• We can select data according to class and then
test
• It reduces number of test cases
• Reduces time
Boundary value analysis
Check boundaries of input
Decision table
• Used when we have many conditions and
corresponding actions
• We deal user combination of input
• To identify test cases with decision tables.
State transition
• Changes in input changes the state of
application
• Enter many input conditions in sequence
• Both positive and negative test values are
given to test the system behaviour
Error guessing
• Used to find bugs in software application
• No rules
• Based on tester’s skills and experience
Example:
Submitting a form without filling all the values
STLC – software testing life cycle
• Sequence of actions conducted to perform
software testing
• It has a entry and exit criteria
Requirement analysis
• Understanding the requirements
• Identifies the test that has to be performed
• Get application access
Test planning
• Preparation of test plan document for various
types of testing
• Test tool selection
• Resource planning
Test design
• Create test scenarios, test cases, automation
scripts, RTM
• Create test data
• Review test cases with lead
• Get approval
Test execution
• Executes test as per plan
• Document test result and log defects for failed
cases
• Tracks defect to closure
• Retest the defect fixes
Test Closure
• Evaluate cycle completion
• Prepare test closure report
• Test result analysis
Test plan contents
• Document which describes test scope, test
strategy, objectives, schedule, deliverables
and resources required to perform testing for
a software product
Test plan template contents
• Overview
• Scope
– Inclusions
– Test environments
– Exclusions
• Test strategy
• Defect reporting procedure
• Roles/Responsibilities
• Test deliverable
• Pricing
• Entry and exit criteria
• Suspension and resumption criteria
• Tools
• Risk and mitigations
• approvals
Use case
• Describes requirement
Actor ---- which is the user
Action ---- where you reach final outcome
Goal/Outcomes ---- successful user outcome
Test scenario
• Area which is to be tested
• What to test?
Test case
• Step by step actions to validate functionality
• Contains test steps\
• Expected results and actual result
Use case vs test case
• Use case:
describes functional requirement
done by Business Analysts
• Test case:
describes test steps and procedures
done by Test Engineer
• Test scenario
what to be tested?
• Test case
how to test?
• Test suite
group of test cases that belong to same
category
• What is test case?
set of actions to validate particular
functionality of software application
Test case content
• Test case ID
• Test case title
• Description
• Pre-condition
• Priority
• Requirement ID
• Steps/Actions
• Expected result
• Actual result
• Test data
Test case template
Requirement traceability matrix(RTM)
• Describes mapping of requirement with test
cases
• All the test cases are covered
• RTM parameters
– Requirement ID
– Requirement Description
– Test case ID’s
Test environment
• Platform build for test case execution on
software product
• Created by integrating required hardware and
software with network configurations
• Also called as test bed
Test execution
• Testing will happen based on test plan and
test cases prepared
• Entry criteria : Test cases, test data and Test
plan
Activities
• Test cases are executed based on Test plan
• Status of Test case are marked
• Documents of test results and log defects for
failed cases are prepared
• Blocked and failed test cases are given bug ID
• Retest the defects that are fixed
• Defects are checked till closure
Deliverables
• Provides defect and test case execution report
with completed results
Guidelines for test execution
• The build being deployed to QA environment
is an important part of test execution cycle
• Done in QA environment
• Happens in multiple cycle
• Executing Test cases and test scripts
Defects/Bugs
• Any mismatched functionality
• During test execution test engineer reports
mismatches as defects to developers using tools
• Defect reporting tools
– Clear quest
– Dev track
– Jira
– Quality center
– Bug jilla
Defect report concept
• Defect ID
• Defect description
• Version
• Steps
• Date released
• Reference
• Detected by
• Status
• Fixed by
• Data closed
• Severity
• priority
Defect severity
• Blocker – testing is blocked. Cannot proceed
further
• Critical – main functions not working
• Major – unexpected behaviour, but
application is working
• Minor – no major breakdown is caused
Defect priority
• Importance of defect is described
• Order to fix the defect
– High
– Medium
– low
Defect resolution
• Development team conducts a meeting to fix
defects
• Sends resolution type to testing team for
further communication
Resolution types
• Accept
• Reject
• Duplicate
• Enhancement
• Need more information
• Not reproduceable
• Fixed
• As designed
Bug life cycle
Manual testing live project
• Document that are given to tester
Requirement document
SRS document

Test case overview report


• Documents prepared by testers:
RTM report
Test scenario
Test case
Daily status report
Weekly report
Bug report
Test log report
Test summary

You might also like