SWT6 Tim
SWT6 Tim
4 Test
5 Management 6 Tools
techniques
Test Management
Chapter 6
CONTENT
Test Tool
Considerations Test Execution
• Capture/Replay
Execution & • Data-driven
Management Tools • Keyword-driven
Considerations • Model-based
Test Management
CONTENT
Test Tool
Considerations Test Execution
• Capture/Replay
Execution & • Data-driven
Management Tools • Keyword-driven
Considerations • Model-based
Test Management
Tool Classification
Defect Mgt.
Tools
Reqs. Mgt. Config. Mgt.
Tools Tools
• Test management tools supports
test management & control part
of a test process, with several
capabilities built in.
Defect Mgt.
Tools
Reqs. Mgt. Config. Mgt.
Tools Tools
Defect Mgt.
Tools
Reqs. Mgt. Config. Mgt.
Tools Tools
• Sometimes referred to as
incident management tools, bug
tracking/management tools
• Info about failures during testing
Test Mgt. & CI Tools
(not defects) is recorded.
AML Tools (D)
• Defect Mgt. tools facilitate the
incident report life cycle
Tool Support for Management of Testing & Testware
Defect Mgt.
Tools
Reqs. Mgt. Config. Mgt.
Tools Tools
Defect Mgt.
Tools
Reqs. Mgt. Config. Mgt.
Tools Tools
• More likely to be used by
developers
• Essential part of Agile toolkit
• Integration of new/changed code
Test Mgt. & with existing code base is very CI Tools
AML Tools frequent. (D)
• Unit tests are often automatically
run when a new build is made.
Tool Support for Static Testing
Static
Review
Analysis
Tools
Tools (D)
Static
Review
Analysis
Tools
Tools (D)
• Normally used by developers (in
coding, unit testing, code
structure comprehension, coding
standard enforcement)
• An extension of compiler tech
• Can be used on work products
other than source code (e.g.,
requirements, websites)
Tool Support for Test Design & Implementation
Test Data
Preparation
Test-driven
Model-based Tools
Development
Testing Tools Tools (D)
• Help construct test cases (or at
least test inputs)
• Tests can be derive from
o Formal requirements
o Elements on a screen
Test Design ATDD & BDD
o A model of the system
Tools Tools
• Challenge with expected result
generation, too many tests
generated by the tools
Tool Support for Test Design & Implementation
Test Data
Preparation
Test-driven
Model-based Tools
Development
Testing Tools Tools (D)
Test Data
Preparation
Test-driven
Model-based Tools
Development
Testing Tools Tools (D)
• Can be used be developers, and
testers (in system and/or
acceptance testing)
• Esp. useful in performance &
Test Design reliability testing ATDD & BDD
Tools Tools
• Useful for anonymising data
(conform to data protection
rules)
Tool Support for Test Design & Implementation
Test Data
Preparation
Test-driven
Model-based Tools
Development
Testing Tools Tools (D)
Test Data
Preparation
Test-driven
Model-based Tools
Development
Testing Tools Tools (D)
• ATDD captures requirements by
writing acceptance tests in
conjunction with users
• BDD focuses on system
Test Design behaviour & functionality (often ATDD & BDD
Tools used by dev team) Tools
• These tools have syntax (rules),
like a natural language
Tool Support for Execution & Logging
Test
Coverage
Harnesses
Tools (D)
(D)
• Interface to the SUT
• Run tests as if run by a real user
• Test scripts in a programmable
language
Test • Data, test inputs & expected Unit Test
Execution results held in test repo. Framework
Tools • Most often used in automated Tools (D)
regression testing
• Capture/replay (problematic)
Tool Support for Execution & Logging
Test
Coverage
Harnesses
Tools (D)
(D)
• Objective measure of what parts
of the software structure was
executed by tests
Test • Identify elements that can be Unit Test
Execution Framework
counted reports what has &
Tools Tools (D)
has not been covered by those
tests
Tool Support for Execution & Logging
Test
Coverage
Harnesses
Tools (D)
(D)
Test
Coverage
Harnesses
Tools (D)
(D)
• Software tools to support writing
and running unit tests.
• Can be used in Agile to automate
tests in parallel with
Test Unit Test
development
Execution Framework
Tools • Tend to be used in component Tools (D)
and component integration
testing
Tool Support for Performance & Dynamic Analysis
Monitoring
Tools
Performance Dynamic
Testing Analysis
Tools (D) • Focus on testing at system level Tools (D)
to see if SUT will stand up to a
high volume of usage.
• Load generation: stimulates
multiple users and/or high
volumes of input data
• Reports: based on logs, graphs of
load against response time.
Tool Support for Performance & Dynamic Analysis
Monitoring
Tools
Performance Dynamic
Testing Analysis
Tools (D) • Continuously keep track of the Tools (D)
status of system in use provide
earliest warnings & improve
service
• Monitoring tools for servers,
networks, DB, security,
performance, website & internet
usage, etc.
Tool Support for Performance & Dynamic Analysis
Monitoring
Tools
Performance Dynamic
Testing Analysis
Tools (D) • Provide run-time information on Tools (D)
software while it’s running.
• Example:
o allocation, use and de-
allocation of resources, e.g.
memory leaks
o flag unassigned pointers or
pointer arithmetic faults
Tool Support for Specialised Testing Needs
Data
Conversion & • In IT-centric orgs, very large Security
Migration volumes of complex & Testing
interrelated data need to be
managed.
• These tools can check data
according to given validation
Data Quality Portability
rules (e.g., a particular field is
Assessment Testing
numeric or of a given length)
data failing a check get reported.
Tool Support for Specialised Testing Needs
Data
Conversion & Security
• These tools can verify data
Migration Testing
conversion & check if data
migration has occurred according
to migration rules.
• Help ensure the correctness,
Data Quality completeness, standard complied Portability
Assessment of processed data, regardless of Testing
the volume
Tool Support for Specialised Testing Needs
Data
Conversion & Security
• These tools can help to assess UX
Migration Testing
in using system
o After use survey
o Checking broken links
o monitoring usage through most-
Data Quality clicked links, video recorders, key Portability
Assessment presses, screen capture, eye Testing
movement tracking
Tool Support for Specialised Testing Needs
Data
Conversion & • The practice of making sure SW Security
Migration be accessible to those with Testing
disabilities.
o Screen reader
o Design with users with colour-
Data Quality blindness in mind
Portability
Assessment o Increasable text Testing
o Alternative text
Tool Support for Specialised Testing Needs
Data
• Examines a system's behaviour in Security
Conversion & relation to a particular location,
Migration Testing
locality, or culture
• Goal: to ensure that a software's
linguistic and cultural characteristics
are acceptable for a certain location
Data Quality (translation, menu items, buttons,
error messages) Portability
Assessment Testing
• An area where human intelligence is
needed
Tool Support for Specialised Testing Needs
Data
Conversion & • Used to test security by attempts to Security
Migration break into a system Testing
• Help to identify viruses, detect
intrusions, simulate external attacks,
probe open ports, identify
weaknesses in passwords &
Data Quality password files. Portability
Assessment • Perform security checks during Testing
operation.
Tool Support for Specialised Testing Needs
Data
Conversion & Security
Migration Testing
• Portability test tools support testing
on different platforms &
environments
• Help run same tests on different
Data Quality devices Portability
Assessment Testing
Where tools fit
Test Tool
Considerations Test Execution
• Capture/Replay
Execution & • Data-driven
Management Tools • Keyword-driven
Considerations • Model-based
Test Management
Potential Benefits and Risks
There are many risks that are present when tool support for testing
is introduced and used, whatever the specific type of tool.
• Unrealistic expectations for the tool
• Underestimation of the time, cost and effort for the initial
introduction of a tool, for continuing benefits from the tool, for
maintenance of test assets generated by the tool
• Overreliance on the tool
• failing to consider and manage issues related to relationships and
interoperability between critical tools
Risks of using tools
Test Tool
Considerations Test Execution
• Capture/Replay
Execution & • Data-driven
Management Tools • Keyword-driven
Considerations • Model-based
Test Management
SpecCons for Test Execution & Management Tools
Enter
Input Input Data
Actions
Automation
SUT
Script
Test
Data Test Output Send Output
Data Data
Model-based Testing Tools
• These tools can generate loads of useful data, but they need to
interface with other tools in order to:
o Produce meaningful information in an accessible format
o Maintain consistent traceability to requirement (w/ reqs mgt. tools)
o Link with test object version information (w/ config mgt. tools)
Test Tool
Considerations Test Execution
• Capture/Replay
Execution & • Data-driven
Management Tools • Keyword-driven
Considerations • Model-based
Test Management
Considerations for Tool Selections
• Check if the tool(s) are available for a free trial period (and for
how long)
• Evaluation of the vendor
• Identification of coaching, mentoring, & training needs
• Consideration of pros and cons of various licensing models (e.g.,
commercial or open source)
• Estimation of a cost-benefit ratio
• Finally, a proof-of-concept evaluation should be done
Pilot project
Primary objectives:
• Gaining knowledge about the tool
• Evaluating how the tool fits with existing processes and practices
• Deciding on standard ways of using, managing, storing, and
maintaining the tool and the test assets
• Assessing whether the benefits will be achieved at reasonable
cost
• Understanding the metrics to be collected & reported by the tool,
and configuring the tool to ensure these metrics can be captured
and reported.
Success Factors for Tools