Uploaded by luis3263a-animedb

RQM Presentation

advertisement
0.20
Quality Manager
(Orchestrazione automazione test del Sw)
1
Test Management
2
© Leonardo - Finmeccanica - Società per azioni
1. Test Management
In this module we will address the following topics:
1. Test Management goals
2. Validation vs Verification: Defining the right system vs constructing
the right system
3. Traceability in the lifecycle
4. Requirement & Requirement testing: Taxonomies & applicability
5. Test Types
6. Test confidence, reliability & residual defects
3
© Leonardo - Finmeccanica - Società per azioni
Brief Discussion
What are typical problems faced by development teams and why?
Are you working with all informations?
Have you complete informations to work?
If not, can you have prompt answers to your questions/issues?
Will things change on-the-fly when you are working on it?
Have you sufficient time to complete on time the
assigned work?
Did you feel confident that on delivery your artifacts
are complete and do not need more changes?
What improvements can be made?
To the tools?
To process?
To training?
4
© Leonardo - Finmeccanica - Società per azioni
Symptoms
User or business needs not met
Insufficient requirements
Boiling Requirements
Ambiguous communication
Modules not integrating
Brittle architectures
Difficulties with maintenance
Overwhelming complexity
Late discovery of flaws
Undetected inconsistencies
Poor quality of end-user experience
Poor performance under load
No coordinated team effort
Build-and-release issues
Poor testing
Subjective assessment
Waterfall development
Uncontrolled change
Insufficient automation
5
© Leonardo - Finmeccanica - Società per azioni
Root Causes to Symptoms
User or business needs not met
Insufficient requirements
Boiling Requirements
Ambiguous communication
Modules not integrating
Brittle architectures
Difficulties with maintenance
Overwhelming complexity
Late discovery of flaws
Undetected inconsistencies
Poor quality of end-user experience
Poor performance under load
No coordinated team effort
Build-and-release issues
Poor testing
Subjective assessment
Waterfall development
Uncontrolled change
Insufficient automation
6
© Leonardo - Finmeccanica - Società per azioni
Trace symptoms to root causes
Symptoms
Resolving
Root causes
Address
Best practices
Needs not met
Insufficient requirements
Boiling Requirements
Ambiguous communication
Develop iteratively
Modules do not fit
Brittle architectures
Manage requirements
Hard to maintain
Overwhelming complexity
Late discovery of flaws
Undetected inconsistencies
Poor quality
Poor testing
Model visually (UML)
Poor performance
Subjective assessment
Continuously Verify quality
Colliding developers
Waterfall development
Build-and-release
Uncontrolled change
Insufficient automation
© Leonardo - Finmeccanica - Società per azioni
Use component architectures
Manage change
7
Discussion
Testing models vary widely:
–What types of testing do you do?
–What do you test?
–When do you test?
–How formal is your process?
8
© Leonardo - Finmeccanica - Società per azioni
Test Management Goals
Organizing resources and artifacts involves organizing and maintaining an
inventory of items to test and assembling a group of testers.
Define specific
test cases, and
Determine why,
develop test
what, where, and
scripts to
when to test.
implement the
test cases.
Monitor the test
effort, analyze test
results,
communicate
project status and
product quality
Run test
scripts and
test suites,
and submit
defects.
The planning, estimating, monitoring, and control of test
activities, typically carried out by a test manager.
© Leonardo - Finmeccanica - Società per azioni
− ISTQB Glossary
s
9
Test management challenges
How do you determine the current quality of your application under test
(AUT)?
How do you define, measure, and track quality goals?
How do you coordinate the work of all people who are involved in the testing
effort?
How do you track dependencies and relationships among test assets?
How do you plan, execute, and evaluate your testing iteratively?
10
© Leonardo - Finmeccanica - Società per azioni
Review requirements to reduce rework
Relative Cost to Correct a Defect
120
100
80
60
40
20
0
© Leonardo - Finmeccanica - Società per azioni
Rework can consume
30% - 50% of your
development costs:
Requirements errors
account for 70% 85% of rework costs.
Preventing
requirements errors
and catching them
early has a huge
leveraging effect on
reducing rework.
Wiegers, 2003.
11
Requirements are an input to test planning
What’s new in
this release?
What should I
test?
Does the system
meet security
expectation?
What is the intended
system behavior for
this operation?
Does the system
meet reliability
expectations?
What are the
performance
expectations?
Test Manager
Does the system
meet safety
expectations?
Does the system
meet robustness
expectations?
© Leonardo - Finmeccanica - Società per azioni
Are all compliance
criteria satisfied?
Does the system
meet usability
expectations?
12
Quality stabilization process
Defects
Test Case
Satisfy
Design
Process
Validation
Requirement
Verification
Specification
Test Results
Document Results
Changes
The
Product
Drive Implementation Of
Implementation
© Leonardo - Finmeccanica - Società per azioni
13
..But we have more perspective to capture with
requirement sets (each requirement lives in a specific set)
Is Verified By
Needs
UR
Verify
System
Verification
System
Design
Verification
Design
Validation
User
Acceptance
Implementa
tion
14
© Leonardo - Finmeccanica - Società per azioni
Overall System and Software Quality by design
Applicable Standards
(Guide and
Compliance)
User
Requirements
Context of use
Satisfy
Satisfy
Satisfy
The Product
Validation – Proves that the specified product design is coherent
Verification – Measures that the real product meet specifications
15
© Leonardo - Finmeccanica - Società per azioni
…Standards origin
1994
EIA/IS632
Systems
Engineering
1969
MIL-STD499
1974
MIL-STD499A
1994
MIL-Std499B
(Not
Released)
1980
MIL-STD1679A
(Interim)
1998
IEEE 1220
1998
1994
IEEE 1220
1994
(Trial Use)
Software
Engineering
1968MIL-STD1679
1998
ANSI/EIA632
1985
DOD-STD2167
Data Item
Descriptions
1968-
1995
ISO/IEC
12207
1988
DOD-STD2167A
1987
DOD-STD1703
1988
DOD-STD7935A
1994
MIL-STD498
1995
IEEE 1498
/EIA 640
(Draft)
1995
EIA/IEEE
J-STD-016
2003
ISO/IEC
19760
Guide
1999
EIA/IS- CMMI
731
(SE-CM)
2003+
ISO/IEC
15288
IEEE
1220
Harmon
2003+
ISO/IEC
15288
12207
Harmon
1999-2002
Instructions/
Handbooks/
Manuals/
Guides
Supersedes
Derived From
(Interim)
2003+
DIDs
Defense
Specifications
1998
IEEE/EIA
12207
2002
ISO/IEC
15288
DIDs
1995
MIL-STD961D
2003
MIL-STD961E
16
© Leonardo - Finmeccanica - Società per azioni
Adapted from John O. Clark INCOSE 2003 Speech
Standard Normalization
Satisfy
Stakeholder Need
System
Software
System
User Requirement
ORD, ICD
TLR
SSS, Internal IRS
System Requirement
SRD, SS,
External IRS
SRS + (SW)IRS
Subsystem
Requirement
SSS, Internal IRS
Architecture
SDD, IDD
Design Requirement
SSDD, DBDD,
SRS, HRS
Detailed Design
Implementation
Requirement
Drawings
Code
Implementation
IEEE 15288, IEEE 12207
MIL-STD 499 / EIA632
MIL-STD 498
17
© Leonardo - Finmeccanica - Società per azioni
Test Traceability
Verification
Solution against expectations
User Requirement
System Requirement
Subsystem
Requirement
User Acceptance
System against requirements
System Testing
and Qualification
Subsystems against requirements
Collaborations
Components against requirements
Integration Testing
Design Requirement
Implementation
Requirement
Component against requirements
Unit Testing
Intrinsic Product Quality Area
In-context Product Quality Area
18
© Leonardo - Finmeccanica - Società per azioni
In-context quality
+ Robustness
19
© Leonardo - Finmeccanica - Società per azioni
Intrinsic Product Quality
+ Compliance with standards
20
© Leonardo - Finmeccanica - Società per azioni
Quality Impact
21
© Leonardo - Finmeccanica - Società per azioni
How measure the missing quality - Terms
Issue
Is measured as the difference between actual (prescribed) and
expected
Impact
Is the effect of the issue in the context of use
Defect
Is the origin that originates the issue
Error
Is what is introduced by one missing or failed activity
Remediation
Is the proposed (then accepted) fix that shall be implemented
Implementation
Is the fix implementation and will be released in product lifecycle
22
© Leonardo - Finmeccanica - Società per azioni
Verification
Verification Level
System
( Element )
Subsystem
( Equipment )
Unit
Test Kind
Destructive
Typical to check robustness over design limits
Non-Destructive
All other cases
Post-Mortem
Robustness of weared out items
Verification Methods:
Analysis (A) – Typical in R&D Phase & Qualification
Prove by design review the existence of the requirement implementation
Inspection (I) – Typical in Production
Prove by inspecting the produced element
Demonstration (D) – Typical in Qualification
Demonstrate the presence of the requirement by direct measure
Test (T) – Any R&D and Production phase
Measure pragmatically using a specific procedure
23
© Leonardo - Finmeccanica - Società per azioni
Different test levels addressed
System Level
and Qualification
•
Verifies that the system requirements (functional
and QoS) are present in the product.
•
Verifies that the designed parts integrates
correctly satisfying the designer expectations.
(functional and QoS)
Verifies the interface requirements match the
implementation
Unit Level
•
Verifies that the single unit match the expected
behavior and QoS
….. Tests
•
Verifies that the asset are in compliance with
process guidelines
Integration Level
24
© Leonardo - Finmeccanica - Società per azioni
Test Types
Black Box Testing
Injected Condition
Context integration
White Box Testing
System Test
Integration Test
Unit Test
25
© Leonardo - Finmeccanica - Società per azioni
Typical test types usage
System Testing (Black Box)
It verifies that (1) the system satisfies the given
requirements and does not have unexpected behavior
or break when used incorrectly (functional robustness).
Used in system and software system also for
qualification.
System Integration Testing (White Box)
Verifies and prove how the internal states and parts
influences the behavior and qualities of the subsystem
or part. Examples are safety, reliability, performance.
Used in proofing the final system or part design in pr
black box testing, certifications or R&D
Integration Testing (White Box)
Unit Testing (Black Box)
Verify and prove selected parts integration on how they
fit together on interfaces design, integrated
collaboration, robustness, integrity, performance. Used
in R&D to proofing selected parts integration and
robustness post unit test and before testing the whole
block
It is used in post-production to verify and prove that the
built part and implementation satisfy or exceed
specified design requirement. Used in R&D and
factories after implementation before making the part
available for integration or assembly
26
© Leonardo - Finmeccanica - Società per azioni
Requirements in the RM application
Requirement
collection
In the Requirements Management application:
– A requirement collection is a set of high-level
requirements that are grouped for a specific
purpose, such as a particular release or functional
area.
– A requirement defines a specific capability that the
application under test must provide.
– Requirement types include features, non-functional
requirements, and user stories.
Requirement
27
© Leonardo - Finmeccanica - Società per azioni
Test Confidence, Reliability and Residual Defects
The verification process, by verifying the item allocated requirements,
may address:
The correct behavior and context integration interfaces
Limits and boundary conditions
Integrated error and failure protection mechanisms and handling
Safety (countermeasures verification)
Performance (Volumes, Responses times, Capacity)
Reliability (prediction of fault probability, in-range conditions)
Integrity (confidence)
Robustness (resilience, breaking conditions, out-of-range and exceeded
assumptions behaviors, non damage limits)
…
Each verification context may develop test plans to address quality
scope or which defect size, if existent, may be pass undetected.
28
© Leonardo - Finmeccanica - Società per azioni
Reliability: Each QoS can influence others
Function
State
Hazard
Safety
Issue
Performance
Security
Incident
QoS
Break
Robustness
Integrity
Issue
29
© Leonardo - Finmeccanica - Società per azioni
Requirements-based testing – Testing confidence
The requirements-based testing (RBT) process addresses
two major issues:
– first, validating that the requirements are correct, complete,
unambiguous, and logically consistent;
– and second, designing a necessary and sufficient set of test
cases from those requirements to ensure that the design and
implementation fully meet those requirements.
30
© Leonardo - Finmeccanica - Società per azioni
Requirements-based testing strategy
The overall RBT strategy is to integrate testing throughout the development life
cycle and focus on the overall quality addressing the following benefits:
– Early defect detection
– Defect prevention, not just defect detection
– Reduced cost of defect detection and remediation
– Reduced time to delivery
– Increased probability of successfully delivering the right solution
31
© Leonardo - Finmeccanica - Società per azioni
2
Quality Manager & Team
Concert Integration
Overview
32
© Leonardo - Finmeccanica - Società per azioni
2. Quality Manager & Team Concert Integration Overview
In this module we will address the following topics:
1. Tools vs Toolchains: activites vs Process
2. Lifecycle project, QM Project Area, CM Project Area, RM Doors,
Rhapsody Designer
3. Test Management and Change management integration within
Rational Quality Manager and Rational team Concert planning
33
© Leonardo - Finmeccanica - Società per azioni
Lifecycle project
A set of related project areas that are linked
Centrally managed through the Lifecycle Project Administration (LPA)
application
Quality
Management
project area
Quality
management
tasks
Defects
Change and
Configuration
Management
project area
Requirements
Implementation
requests / tasks
Requirements
change
requests
Requirements
Management
project area
34
© Leonardo - Finmeccanica - Società per azioni
Project area
The context in which teams perform their work
Provides access to all project artifacts, such as plans, work items,
requirements, and test cases
Controls project access, membership, roles, and permissions
Created by a user with JazzAdmins or JazzProjectAdmins repository
permissions
Managed by a local project administrator
Quality Management
project area
Quality
management
tasks
Defects
Change and
Configuration
Management
project area
© Leonardo - Finmeccanica - Società per azioni
Quality
Management
project area
Requirements
Implementation
requests / tasks
Requirements
change requests
Requirements
Management
project area
Artifacts
Project access
and members
Roles and
permissions
35
Banner bar (1 of 2)
Banner elements are consistent among Jazz applications
Project (Application)
Help Menu
Logged in user
Home Menu
Use the Home menu to:
Navigate among Quality Management
projects.
Access Change and Configuration
Management and Requirements
Management projects.
Access the Jazz Team Server Home or
Lifecycle Project Administration application.
36
© Leonardo - Finmeccanica - Società per azioni
Banner bar (2 of 2)
Use the Profiles menu to:
View information about
your user profile
Set user preferences
Log out
Use the Admin menu to:
Access Quality Management project
properties and timelines
Manage the Quality Management project
area
Create or manage lifecycle projects
Go to the Jazz Team Server home page
Profiles menu
Admin menu
37
© Leonardo - Finmeccanica - Società per azioni
Search
This search found four
resources that contain the text
bill :
A test script
A test case
A test case execution record
A test case result
Select the types of
resources that you want
to include in the search .
38
© Leonardo - Finmeccanica - Società per azioni
Filter
Use the filter box to limit a list to items that contain the specified text.
Clear Filter Text
39
© Leonardo - Finmeccanica - Società per azioni
Quality management test artifact map
Development
plan
The Quality Management application uses artifacts to contain and
organize project information. Links create relationships between artifacts.
Requirement
collection
Test plan
Requirement
Test case
Development
work item
Test script
Test suite
Test suite
execution record
Test suite result
Test case
execution record
Test case result
Defect
Test
environment
Relationships
Bidirectional link
Parent / child
© Leonardo - Finmeccanica - Società per azioni
Test data
40
Quality management capability menus
Use the capability menus to:
– Open a dashboard.
Browse, create,
and import
– Review requirements.
artifacts
– Manage test plans.`
– Develop test cases and test scripts.
– Review test execution records.
– Run reports.
– Create and review change requests.
See recently
viewed artifacts
and lists
41
© Leonardo - Finmeccanica - Società per azioni
The Quality Management project dashboard
Save changes automatically
Click an
artifact to
open it.
Tasks and reviews
assigned to the
logged in user.
Work items
Report data that shows
test execution status
Project timelines
and members
Log of events that have occurred
in the QM application
The dashboard displays a variety of widgets that provide views into projects.
42
© Leonardo - Finmeccanica - Società per azioni
Hover for Details
Hover over an artifact link
in a list to see information
about the artifact.
© Leonardo - Finmeccanica - Società per azioni
Review summary information about
an artifact before you decide whether
to click and open the artifact.
43
About the Mini Dashboard
Add Widget
Pin or Unpin
Functions like the main dashboard
Persists across applications and QM pages
Quick show and hide (or pin open, docked
on left or right )
To open, click the vertical Mini
Dashboard bar on the left.
To close, click anywhere
outside the Mini Dashboard.
44
© Leonardo - Finmeccanica - Società per azioni
3
Test Activities Planning
45
© Leonardo - Finmeccanica - Società per azioni
3. Test Activities Planning
In this module we will address the following topics:
1. Test Plan Description: Objectives, Time, Resources and Risks
2. Test Plan Templates
3. Assigning Quality Tasks to teams
4. Formalizing Test Plans
5. Risk Management in test plans: risk profiles, probability and impact
6. Test Schedule & Test Estimation
7. Test Platform & Test Environment
8. Review and approval of test plans
9. Test Plan Reports & affected requirements
10.Snapshot & audit trails
11.Test Plans and release management timeline
46
© Leonardo - Finmeccanica - Società per azioni
Orientation: Rational Quality Manager
Start planning the test effort by identifying allocated requirements.
Identify
requirements
Develop a
test plan
Develop test
cases and
test suites
Develop test
scripts
Run test
cases and
test suites
Report
defects
Generate
reports
47
© Leonardo - Finmeccanica - Società per azioni
Test artifacts related to the test plan
Define the test effort
with quality goals
Define what to test and
the test procedure
Detail how to execute the
test case
Test plan
Test suite
Group related test
cases to be executed
together
Test case
Test script
48
© Leonardo - Finmeccanica - Società per azioni
Test plan
Test plan
A document defining the scope, approach, resources, and schedule of intended
test activities… It is a record of the test planning process.− ISTQB Glossary
A Quality Management test plan:
– Defines scope, objectives, risks, schedules, work estimates,
entry, and exit criteria, and team members
– Is a quality contract for the entire team
– Is the foundation of planning the test effort
– Includes static and dynamic content
– Has associations with requirement collections, development
plans, test cases, test suites, test environments, and child test
plans
– Can have one or more child test plans or one parent test plan
49
© Leonardo - Finmeccanica - Società per azioni
Test motivators
Test motivators are anything that the test team uses to help
determine what to test.
System
specifications
Use-case
model
Design
specifications
© Leonardo - Finmeccanica - Società per azioni
Requirement
s
Change
requests
Test plan
Iteration plan
Risk lists
50
Test plan header and summary section
Execution Progress
ID and Name
State, Action,
Originator,
Owner, and
Priority
Description
Selected
section area
51
© Leonardo - Finmeccanica - Società per azioni
Test plan sections
A set of predefined sections may be included in the Test Plan as needed. Each
section brings specific content and is shown inside the section area
Rich text
Predefined content
52
© Leonardo - Finmeccanica - Società per azioni
Test plan customization
Test Plans can be customized to suit the specific target or test effort.
Customization are made by:
– Add sections
– Remove sections
– Reorder sections
– Create custom sections
Create a category values.
53
© Leonardo - Finmeccanica - Società per azioni
Add, remove, and reorder test plan sections
1
Click to hide or
show available
sections
Create
Section
Move
Up
Move
Down
2
Sections not in
the test plan
Sections included in
the test plan
Add
Add All
Remove
Remove All
© Leonardo - Finmeccanica - Società per azioni
3
54
Create a custom test plan section
1
2
3
4
5
The rich text
editor opens
55
© Leonardo - Finmeccanica - Società per azioni
Rich text editor toolbar
Bold / Italic / Underline / Strikethrough
Subscript / Superscript
Paragraph Format
Font Name
Text Color
Background Color
Remove Format
Font Size
Insert Table
Insert Horizontal Line
Align Left / Right / Center / Justified
Increase / Decrease Indent
Numbered / Bulleted List
Cut / Copy
Paste / Paste as plain text /
Paste Special
Undo / Redo
Find
Maximize
Validate Content
Insert Image
Insert Attachment
Insert Link
Remove Link
56
© Leonardo - Finmeccanica - Società per azioni
Add values to a category
1
3
2
4
5
Optional: Set one value as
the default value.
Click to add
another value.
6
7
57
© Leonardo - Finmeccanica - Società per azioni
Artifact Template
• Templates define structure only, not content (all sections
are empty).
• Templates can include predefined and custom sections.
• Templates are provided for these artifacts:
– Test plans
– Test cases
– Test suites
• A template is an ordered set of artifact sections.
• Use templates to standardize the structure of test artifacts.
58
© Leonardo - Finmeccanica - Società per azioni
Standardization of structure and contents
• To standardize the content in test artifacts, create a
baseline artifact (or skeleton) as you will then save as
“Template” item.
• When you need the artifact, duplicate it to create new
artifacts.
• To help compiling the artifact as your intent, include test
group standards and instructions to testers in the baseline
artifact.
59
© Leonardo - Finmeccanica - Società per azioni
Manage templates
Click Admin > Manage Artifact Templates.
Grouped by:
Ungrouped
Type
Filter for specific text
All templates that include
the filter text, grouped by
artifact type
60
© Leonardo - Finmeccanica - Società per azioni
Manage templates toolbar
Use the toolbar to complete template operations
Copy
Template
Refresh Templates
Copy Template and
Set as new default
are enabled when a
template is selected.
Set as new
default
Archive
Change Display Settings
Archive is enabled only
if you have permission
to archive a template.
61
© Leonardo - Finmeccanica - Società per azioni
Create a test plan template (1 of 2)
To create a
template, either
create a
template…
1
2
2
… or copy an existing
template, and then edit
it to suit your needs.
1
62
© Leonardo - Finmeccanica - Società per azioni
Create a test plan template (2 of 2)
Add, remove, and
reorder test plan
sections in the
template
Use the Up and
Down buttons to
reorder sections.
3
Sections not in
the template
Click to make this
template the
default template.
Sections included
in the template
Add
Add All
Remove
Remove All
4
63
© Leonardo - Finmeccanica - Società per azioni
Create test plan template toolbar
New
Edit
Down
Up
Delete
Edit is available only when a
custom section is selected.
Delete is available only if you
have permission to delete a
template section.
Click New to create a custom
section.
64
© Leonardo - Finmeccanica - Società per azioni
Validating copied text
Use the Validate Content function to clean up copied
text after pasting into a rich text section of the test plan.
This will clean-up all unsupported formatting tags that
may have been copied with the text
1
2
3
65
© Leonardo - Finmeccanica - Società per azioni
Quality objectives
Measurable criteria that define the overall quality goals for athe
test plan
Use quality objectives to:
– Establish measurement criteria and enter status updates
– Define entry and exit criteria for testing
– Measure progress on the overall level of quality
– Respond to the question, “Are we ready to release?”
66
© Leonardo - Finmeccanica - Società per azioni
Add quality objectives to the test plan (1 of 2)
1
2
Ctrl+click to select
multiple quality
objectives
3
67
© Leonardo - Finmeccanica - Società per azioni
Add quality objectives to the test plan (2 of 2)
Click Evaluate Quality
Objectives to see current
actual values (for predefined
quality objectives only).
Selected quality objectives
are added to the test plan.
1
2
68
© Leonardo - Finmeccanica - Società per azioni
Create a custom quality objective
1
2
3
4
69
© Leonardo - Finmeccanica - Società per azioni
Lab 1: Create a test plan template
• Complete these tasks:
Review the test plan template
reference.
Copy a test plan template and rename
the copy.
Add, remove, and reorder test plan
sections.
Make the new test plan template the
default test plan template.
Create a Baseline Artifact
• Add quality objectives.
• Create a quality objective
70
© Leonardo - Finmeccanica - Società per azioni
Quality Tasks - Assign test plan sections to team members
1
2
3
Caution:
The task work item is
not created until the
test plan is saved.
4
71
© Leonardo - Finmeccanica - Società per azioni
Task created in the Change Management application
Click the link in the test plan
section to open the task work
item in the Change
Management application.
72
© Leonardo - Finmeccanica - Società per azioni
Hover on Quality Task to Monitor test plan sections
assigned to team members
Tip:
A test plan cannot be reviewed and approved until
all associated tasks (work items) are complete.
The Test Plan Work Items list
displays tasks that are
associated with sections of the
test plan.
Owner
Status
Due date
Link to related test plan
73
© Leonardo - Finmeccanica - Società per azioni
Different test plan objectives
• Iterations and Release (Verification)
– Regression Test Plans
– Non Regression Test Plans (Change)
• Specific Qualities to be tested
– Safety Countermeasures Test Plans
– Security Measures Test Plans
– Performance/Volumes Test Plans
– Reliability Test Plans
–…
74
© Leonardo - Finmeccanica - Società per azioni
Grouping Test Plans
• Test Plans can be grouped in a parent-child relationship
(one level only)
• Change Management drives Non-Regression test plans
• Configurations drive Regression Test Plans
Rel n Changes
Master
Test Plan
+
Non Regression
Test Plan
Child Plan
Functional Test
Plan
Child Plan
Performance Test
Plan
Child Plan
Safety
Countermeasures
Test Plan
Rel n-1 Tests
=
Rel n+1 Regression Tests
Regression Test
Plan
Regression Test
Plan
Functional Test
Plan
Functional Test
Plan
+
Performance Test
Plan
Safety
Countermeasures
Test Plan
=
Performance Test
Plan
Safety
Countermeasures
Test Plan
Test plans are the correct test artifacts to group tests for objective
© Leonardo - Finmeccanica - Società per azioni
75
Create a test plan
1
2
3
4
5
76
© Leonardo - Finmeccanica - Società per azioni
Detail a test plan
Create a test plan – results in a mostly empty shell
Detail a test plan – involves providing details for each section
The information for test plan sections often comes from related
documentation that is already available.
If you want to create a Child Test Plan, use the Child Test Plans
section
77
© Leonardo - Finmeccanica - Società per azioni
Labs 2, 3 and 4: Customize a test plan and delegate
sections
• Complete these tasks:
Remove a test plan section.
Create a test plan section.
Create a table in a test plan section.
Add a test plan section.
Attach a document to the test plan.
Create a category value.
Change a category value.
Create tasks to direct other team
members to complete sections of the
test plan.
78
© Leonardo - Finmeccanica - Società per azioni
Test plans are the base to organize tests
• Test Plans maintain test cases together
• Test Plans cover the specific test verification objective
• Test Plans document the whole test maturity and coverage
79
© Leonardo - Finmeccanica - Società per azioni
Test planning and risk related to the test
• Capturing risks in the test plan can:
– Prompt early risk assessment and mitigation planning
– Provide a basis for test prioritization
– Enable a project manager to assign resources where they are
most valuable
– Focus the project team on reducing risk whenever possible
80
© Leonardo - Finmeccanica - Società per azioni
Definitions
• Risk: A factor that could result in future negative consequences;
usually expressed as impact and likelihood.
•
• Risk analysis: The process of assessing identified risks to estimate
their impact and probability of occurrence (likelihood).
• Risk-based testing: An approach to testing to reduce the level of
product risks and inform stakeholders of their status, starting in the
initial stages of a project. It involves the identification of product risks
and the use of risk levels to guide the test process.
• − ISTQB Glossary
Standard glossary of terms that are used in Software Testing, Version 2.1
International Software Testing Qualifications Board
81
© Leonardo - Finmeccanica - Società per azioni
Test-Related Risks
Twenty risks are defined in two types:
business and technical. You can
define additional risks as required.
Risks and risk
profiles are
defined in the
Quality
Management
project properties.
82
© Leonardo - Finmeccanica - Società per azioni
Risks in the test plan
The overall risk assessment (for the
artifact) is calculated by taking the
average of all individual risk assessment
scores weighted by importance.
Current impact is only
included in the average if
it is high, medium, or low.
average
83
© Leonardo - Finmeccanica - Società per azioni
Risk profiles
A risk profile is an artifact-specific set of risks.
Risk profiles provide standardization and efficiency.
One risk profile is predefined
for each artifact type. You can
define additional risk profiles
for each artifact type as
required.
Risks and risk
profiles are defined
in the Quality
Management
project properties.
Each risk profile includes
one or more risks.
NOTE: You can create specific risk profiles for different test plan types
© Leonardo - Finmeccanica - Società per azioni
84
Initial risk assessment
Typically by test manager or test plan owner
Provides overall risk score for the artifact
Steps:
– If required: Switch to a more appropriate risk profile.
– Delete inappropriate risks, and add relevant risks.
– Evaluate (edit) risks.
– Optional: Create work items for testers to complete the My Risk
score and provide comments.
85
© Leonardo - Finmeccanica - Società per azioni
Risk Assessment toolbar
Switch Risk Profile
Change Display Settings
Edit Risk
Remove Risk
Add Risk
86
© Leonardo - Finmeccanica - Società per azioni
Switching a risk profile
1
2
3
Replace substitutes the
risks in this profile for the
existing risks in the test
plan
Append adds the risks in
this profile to the existing
risks in the test plan
Risks from the selected risk
profile replace existing risks in
the test plan.
87
© Leonardo - Finmeccanica - Società per azioni
Adding a risk to the test plan
1
Risks by type
Technical risks
2
3
Business risks
2
Select a risk type and risk.
Evaluate the likelihood and
impact of the risk.
Identify an action to mitigate
the risk.
88
© Leonardo - Finmeccanica - Società per azioni
Editing a risk and setting mitigation actions
2
1
Evaluate the likelihood and
impact of the risk.
Identify an action to mitigate
the risk.
3
4
5
6
Assess the current impact of the risk.
Calculates the importance of the risk.
© Leonardo - Finmeccanica - Società per azioni
89
Community risk assessment
Typically by test team members
May include other members of the project team
Produces calculated community risk score
Steps:
1. Select a My Risk score by clicking one of the five
circles.
When you save the artifact,
1
your comment is added to
2. Optionally, type a comment.
2
the discussion and your My
Risk score is added to the
community risk.
90
© Leonardo - Finmeccanica - Società per azioni
Lab 5: Define and assess test risk
• Complete these tasks:
Capture risks for a test plan.
Assess risk as a test manager.
Assess risk as a tester, adding to the
community risk assessment.
91
© Leonardo - Finmeccanica - Società per azioni
Test schedules
A test schedule lists the activities, tasks, or events that make up a test
plan.
These groups of activities are often called milestones or iterations.
Test iterations often mirror development iterations, but can also include
iterations that are specific to the test effort.
A point value is an estimate of the execution effort for the iteration.
92
© Leonardo - Finmeccanica - Società per azioni
Test Schedules section of a test plan
Two sections show how key dates align with, or relate to, test iterations.
Test schedules
define iterations
within the test effort.
Key dates reflect high-level,
product-related events, such
as beta version delivery or
ship-readiness.
© Leonardo - Finmeccanica - Società per azioni
93
Test Schedules toolbar
Show Archived
Browse (select an iteration)
Change Display
Settings
Clear
(clear all
iterations)
94
© Leonardo - Finmeccanica - Società per azioni
Timelines and iterations
One project timeline is enabled (by default).
A timeline hierarchy includes child iterations.
Iterations with a release
scheduled can be added to the
test schedule for a test plan.
Note:
To create or edit a timeline, you must be
an administrator of the project.
95
© Leonardo - Finmeccanica - Società per azioni
Change display settings
To see more of the
name and description
of each test schedule,
change the display
settings.
Add Select
Add All
Remove Select
Remove All
Reallocate
horizontal space
Wrap text instead ellipsing (…)
Reduce vertical space
Reduce font size
96
© Leonardo - Finmeccanica - Società per azioni
Define test schedules on test plan (1 of 3)
1
2
3
97
© Leonardo - Finmeccanica - Società per azioni
Define test schedules (2 of 3)
4
5
6
7
8
98
© Leonardo - Finmeccanica - Società per azioni
Define test schedules (3 of 3)
Instead of using auto
generation, you can click
(Add Row) to add rows
manually and insert progress
points at whatever intervals
suit your reporting needs.
Auto Generation spreads points over
the duration of the iteration in
increments: daily, weekly, or monthly.
9
10
11
Points attempted and points
completed both increase
over time and the gap
between attempted and
completed decreases to zero
by the end of the milestone.
12
99
© Leonardo - Finmeccanica - Società per azioni
Define key dates
1
2
Examples of key dates:
– End of iteration boundary minus one week (a checkpoint)
– Translation drop
– Beta delivery
– Ship-readiness
100
© Leonardo - Finmeccanica - Società per azioni
Test estimation
Estimates are often based on what is known about the project
requirements.
Provide high-level estimates of the time that is required to
– Complete your test planning activities
– Run all of your tests
Update estimates as the test effort progresses.
Execution estimates for individual test cases are captured in the test
case weight.
101
© Leonardo - Finmeccanica - Società per azioni
Lab 6: Set schedule and estimates
• Complete these tasks:
Establish the test schedule for a test
plan.
Estimate the test effort for a test plan.
102
© Leonardo - Finmeccanica - Società per azioni
Platform coverage
Represents the sum of all hardware and software configurations that:
– The product will support
– The test effort will cover
Enables generation of specific test environments
103
© Leonardo - Finmeccanica - Società per azioni
Define platform coverage
1
Tip:
Define platform coverage broadly
by including all environment types
and their attributes that you
anticipate covering. You can
selectively remove specific test
environments later.
2
3
4
When you select an
environment type, attributes for
that type are displayed in the
Available list (and the
Selected list, if any attributes
have been selected).
Selected attributes
are listed.
104
© Leonardo - Finmeccanica - Società per azioni
Test environment coverage examples
Does the business require full coverage of all
environment types or all permutations?
Example testing matrix:
– Operating systems: Microsoft Windows 32-bit, Linux
– Databases: Apache Derby, IBM DB2®
All permutations
All environment types
Windows 32 Linux Derby
Env 1
Env 2
Windows 32 Linux Derby
DB2
Env 1
Env 2
Env 3
Env 4
© Leonardo - Finmeccanica - Società per azioni
DB2
105
Test Plan Lifecycle
Actions move an artifact from one state to another.
Draft
ready for
review
This model applies also to:
• Test plans
• Test cases
• Test scripts
• Test suites
• Test case results
• Test suite results
reject
Under
Review
approve
reopen
Approved
retire
reopen
Tip:
All work items associated with an artifact must be
resolved
before
the artifact can be Under Review.
© Leonardo - Finmeccanica
- Società per
azioni
Retired
106
Test plan review process
The test manager determines that the test plan is
sufficiently developed to get feedback from the test
team and other project members.
Draft
Assign
approver
Approve
Assign
reviewer
Review
Each Approver changes the
review status from Pending to
Approved or Rejected.
Under
Review
Approved
Each Reviewer changes the
review status from Pending to
Reviewed.
The test manager also completes the test plan review
task, and approves the test plan.
107
© Leonardo - Finmeccanica - Società per azioni
Prepare a test plan for review
2
3
This review is for … and shall …
4
1
5
Review and
Approval follow the
same actions but
have different
means
6
8
7
108
© Leonardo - Finmeccanica - Società per azioni
Starting from Dashboard Widget
Review a test plan (1 of 2)
1
3
2
109
© Leonardo - Finmeccanica - Società per azioni
Review a test plan (2 of 2) – E-Signature
4
5
A project administrator can
configure a precondition to
require an e-signature when an
artifact is reviewed or approved.
110
© Leonardo - Finmeccanica - Società per azioni
Test Plan Reports and Affected Requirements
111
© Leonardo - Finmeccanica - Società per azioni
Recall: Test plan approval activities and Checklist
Is the review complete?
Task-review history shows
actions by reviewers and
approvers
Test plan Show Sections
button shows all test plan
sections on one page
Create a PDF file to review
the test plan offline
Create a snapshot
Approve and then save the
test plan
Lock the test plan to prevent
reopening it
Check approvals state
Check task-review history
Resolve task-review
Review test plan in Show Sections
Optional: Create test plan PDF file
Create a snapshot of the test plan
Change test plan status to Approved
Save the test plan
Optional: Lock the test plan
112
© Leonardo - Finmeccanica - Società per azioni
About snapshots
Read-only version of an artifact
Create snapshots of these artifacts:
–
–
–
–
Test plan
Test case
Test script
Test suite
Captures the artifact at a point in time:
– Provides version history, audit trail
– Facilitates progress tracking
– Enables roll-back
Roll-back: copy a snapshot to create an editable copy of a previous
version of the artifact (new version, not replace)
Test plan
© Leonardo - Finmeccanica - Società per azioni
A copied test plan snapshot does not retain
the contents of the Formal Review, Test
Schedules, and Test Environments sections
113
Create a snapshot
1
2
3
4
New snapshot
is added to the
snapshots list
114
© Leonardo - Finmeccanica - Società per azioni
About locking
Any artifact can be:
– Locked by a user with Lock permission
– Unlocked by a user with Unlock permission
Lock and unlock permissions are granted by role and by
artifact type.
A locked artifact cannot be edited.
To lock an artifact, click the lock icon.
To unlock an artifact, click the lock icon.
115
© Leonardo - Finmeccanica - Società per azioni
Lab 7: Approve the test plan
• Complete these tasks:
Check the test plan review status.
Resolve the test plan review task.
Approve the test plan.
Create a PDF file of the test plan.
Create a snapshot of the test plan.
116
© Leonardo - Finmeccanica - Società per azioni
Test Plans & Release Management Timeline
Development Timeline (RTC)
Defect
Testing Timeline (RQM)
Iterations
Requirements
Dev
Release 1.0
Test
Release 1
117
© Leonardo - Finmeccanica - Società per azioni
Ship
4
Constructing test cases
118
© Leonardo - Finmeccanica - Società per azioni
4. Constructing test cases
In this module we will address the following topics:
1.
2.
3.
4.
5.
Creating and detailing test cases
Test requirement coverage generation
Relating test cases to other CLM artifacts
RQM Test case vs RTC workitems relationship
Validating Requirement, Change and Test
119
© Leonardo - Finmeccanica - Società per azioni
Orientation: Rational Quality Manager
Identify
requirements
Develop a
test plan
Develop test
cases and
test suites
Develop test
scripts
Run test
cases and
test suites
Report
defects
Generate
reports
120
© Leonardo
- Finmeccanica
- Società per azioni
Now
we create
test cases.
Recap: Were we are
Development
plan
Requirement
collection
Test plan
Requirement
Test case
Development
work item
Test
script
Test
data
Test suite
Test
environme
nt
Test suite
execution
record
Test suite
result
Test case
execution
record
Test case
result
Defect
Relationships
Bidirectional link
Parent / child
121
© Leonardo - Finmeccanica - Società per azioni
Test artifacts related to the test case
Define the test effort
Test plan
Test suite
Group related test cases
to be executed together
Test cases group can be
executed concurrently
or sequentially.
Define what is to be
tested
Test case
Detail how to implement
the test case
Test script
Test
environment
Define where a test is to
be performed
122
© Leonardo - Finmeccanica - Società per azioni
Test Case
A Test Case is a measure that shall be taken and compared with expected
result (that is the Verification Point) to prove requirement implementation.
Test Case at least have:
Test Case Name
Input Data (may use equivalence classes)
Verification Method (Inspection, Test, Analysis, Demonstration)
Test Procedure/Description (a procedure that ends with the measure
that shall prove pass or fail)
Test Script (the sequence of actions that implements the test procedure)
Trace to Verified Requirement (if test verification point pass, the
requirement is present and implemented)
It is important noticing that, if the verification point cannot be reached, the
test is Inconclusive
123
© Leonardo - Finmeccanica - Società per azioni
Test case summary
ID and Name
Artifact type
State, Originator,
Owner, and Priority
Description
Selected
section
Test case weight is measured
in points and reflects
execution effort.
Start defining a standard,
such as one hour of execution
effort equals 100 points.
124
© Leonardo - Finmeccanica - Società per azioni
Test cases view
Click a column name:
• Once to sort ascending
• Once more to sort descending
• Once more to remove the column sort
Click the Change icon to
change the column value
for all selected test cases.
125
© Leonardo - Finmeccanica - Società per azioni
Test cases view filtered by category
Filter the list of test cases by one or more hierarchical categories
Test cases of
type Dividend…
…sorted in descending
order by Priority
126
© Leonardo - Finmeccanica - Società per azioni
Test cases view grouped
Group test cases by selected field
Expand and collapse groups
Number of test
cases in each group
127
© Leonardo - Finmeccanica - Società per azioni
Test cases traceability view
Use the traceability view to see:
• The requirements each test case validates
• The development items each test case tests
128
© Leonardo - Finmeccanica - Società per azioni
Test cases toolbar
Manage Test Case Categories
Refresh
Download as spreadsheet(.csv)
Change
Display
Settings
129
© Leonardo - Finmeccanica - Società per azioni
Test cases action menu
Perform selected actions on one or more selected test cases
130
© Leonardo - Finmeccanica - Società per azioni
Lab 8: Create a test case
• Complete these tasks:
Create a test case from the
Construction menu.
Create a test case from within a test
plan.
131
© Leonardo - Finmeccanica - Società per azioni
Generate test cases automation
B
E
F
O
R
E
A
F
T
E
R
Requirement
collection
Test plan
Requirement
Requirement
Requirement
Requirement
collection
Test plan
Requirement
Requirement
Requirement
Test case
Test case
Test case
The test case generation wizard:
1. Generates a test case for each
requirement in the requirement
collection that is linked to the test
plan.
2. Adds new test cases to the test
plan.
3. Links each new test case to its
corresponding requirement.
132
© Leonardo - Finmeccanica - Società per azioni
Generate test cases from requirements (1 of 7)
Select one or more requirement
collections and then click
(Reconcile Requirements in
Collections)
2
1
133
© Leonardo - Finmeccanica - Società per azioni
Generate test cases from requirements (2 of 7)
Use the filter box to find
specific requirements
without test coverage.
3
Select some or
all of the listed
requirements.
Click Next as
required to review all
listed requirements.
4
134
© Leonardo - Finmeccanica - Società per azioni
Generate test cases from requirements (3 of 7)
Use the filter box to find
specific requirements
for which you want to
generate test cases.
5
Select all or only
some of the listed
requirements.
Click Next as
required to review all
listed requirements.
6
135
© Leonardo - Finmeccanica - Società per azioni
Generate test cases from requirements (4 of 7)
Select values that are
appropriate for all the test
cases to be generated,
and leave other values
unassigned.
7
8
9
10
By default, the test plan is
the one in which you
clicked
(Reconcile
requirement collections,
generate new test cases).
136
© Leonardo - Finmeccanica - Società per azioni
Generate test cases from requirements (5 of 7)
The wizard:
1. Creates one test case for each
selected requirement.
2. Links each new test case with its
corresponding requirement.
3. Adds all of the new test cases to
the test plan that you specified.
137
© Leonardo - Finmeccanica - Società per azioni
Generate test cases from requirements (6 of 7)
Wait until all
actions are
complete…
…and then
click Next.
11
138
© Leonardo - Finmeccanica - Società per azioni
Generate test cases from requirements (7 of 7)
12
13
139
© Leonardo - Finmeccanica - Società per azioni
Test case generation results (1 of 2)
Generated test
cases are
added to the
test plan.
140
© Leonardo - Finmeccanica - Società per azioni
Test case generation results (2 of 2)
A link to the
corresponding
requirement is added to
the generated test case.
141
© Leonardo - Finmeccanica - Società per azioni
Lab 9: Generate test cases from requirements
• Complete these tasks:
Generate test cases from a
requirement collection.
Verify new test cases and links to
requirements.
142
© Leonardo - Finmeccanica - Società per azioni
Relationships between Test Cases and CLM Artifacts
Requirement
Change
Request
Implementation
Request
Task
Implement
Workitem
Workitem
RTC
Verify
Changes
Workitem
Verify
Doors / DNG
Test case
Changes
Requirement
Tests
Configuration
RQM
RTC
Workitem
Quality Task
RTC
143
© Leonardo - Finmeccanica - Società per azioni
Validation of Test Cases
•
•
Each Test Case shall trace to one requirement
Each Test Case shall trace to one development item if implemented
144
© Leonardo - Finmeccanica - Società per azioni
5
Using test suites
145
© Leonardo - Finmeccanica - Società per azioni
5. Using Test Suites
In this module we will address the following topics:
1. Creating and defining Test Suites: functional and strategic view
2. Monitoring test activities
3. Parallel vs Sequential execution of the test suite
146
© Leonardo - Finmeccanica - Società per azioni
Orientation: Rational Quality Manager
Now we want to group test cases into test suites as appropriate.
Identify
requirements
Develop a
test plan
Develop test
cases and
test suites
Develop test
scripts
Run test
cases and
test suites
Report
defects
Generate
reports
147
© Leonardo - Finmeccanica - Società per azioni
Recap: Test artifacts related to the test case
Define the test effort
Test plan
Test suite
Group related test cases
to be executed together
Test cases group can be
executed concurrently
or sequentially.
Define what is to be
tested
Test case
Detail how to implement
the test case
Test script
Test
environment
Define where a test is to
be performed
148
© Leonardo - Finmeccanica - Società per azioni
Execution variables in Test Suites
Another important aspect of the Test Suites is the
capability to use Execution Variables in the owned test
cases
Replaces literal values in a test script
Values can be changed at run time
Facilitate passing data:
From a test suite to a test case in the test suite.
From one test case to another in a test suite (sequential
execution only).
From a test suite or test case to a test script or keyword script.
Highest level values prevail: Execution variable values
in a test suite supersede those in test cases in the test
suite
© Leonardo - Finmeccanica - Società per azioni
149
Develop a test suite (1 of 5)
Create the test suite.
6
2
1
3
4
5
150
© Leonardo - Finmeccanica - Società per azioni
Develop a test suite (2 of 5)
Add the test suite
to a test plan.
7
8
9
151
© Leonardo - Finmeccanica - Società per azioni
Develop a test suite (3 of 5)
Complete test suite
sections and add test
cases to the test suite.
10
12
11
13
14
152
© Leonardo - Finmeccanica - Società per azioni
Develop a test suite (4 of 5)
15
Recalculate the
test suite weight.
Remember: as initial
performance, 100 = 1 hour
153
© Leonardo - Finmeccanica - Società per azioni
Develop a test suite (5 of 5)
Define execution variables.
16
17
18
19
154
© Leonardo - Finmeccanica - Società per azioni
Lab 10: Develop a test suite
• Complete these tasks:
Create a test suite.
Add the test suite to a test plan.
Associate test cases with the test suite.
155
© Leonardo - Finmeccanica - Società per azioni
Monitoring test activities – Consolidated View
156
© Leonardo - Finmeccanica - Società per azioni
Monitoring test activities – Detailed View
157
© Leonardo - Finmeccanica - Società per azioni
Suites and Test Case Execution Strategy
Test cases execution can be setup for Sequential Execution (order is fixed)
Function
Function
Function
Function
1
2
3
4
Test case 1
Test case 2
Test case 3
Test case 4
or for Parallel Execution (order is casual)
Function
Function
Function
Function
1
2
3
4
Test case 1
Test case 2
Test case 3
Test case 4
158
© Leonardo - Finmeccanica - Società per azioni
Where to use suites
Sequential Suites
If one test completion is one precondition of another (chained
requirements)
If one tester alone is testing one part of the system
Parallel execution Suites
If the test shall verify a whole set of requirements together
If you have many testers involved in the same plan and want to allocate
test case execution to different testers
Each Test Case Execution will produce a Test Case Execution Record
(TCER)
The suite have a Test Suite Execution Record that brings all Test Case
Execution Records inside
Remember: Test cases Result can be Pass, Fail or Inconclusive
© Leonardo - Finmeccanica - Società per azioni
159
6
Test Scripts
160
© Leonardo - Finmeccanica - Società per azioni
6. Test Scripts
In this module we will address the following topics:
1.
2.
3.
4.
5.
Test Scripts: Difference between Test Script and the test case
Manual Test Script: Goals and Definition
Manual Test Script: Supporting Manual Test Script Creation
Manual test Script: Keywords
Automatic Test: Example of automatic test tool integration
161
© Leonardo - Finmeccanica - Società per azioni
Test Script vs Test Case
Test script
is a step-by-step test execution that ends with the Verification Point. Reaching
and passing the Verification Point will demonstrate that the test case passes.
Each Test Environment may require different script steps implementation. For
each step, scripts can have related images and annotations to help the
execution. Each step will require a “pass” to continue the test. Script can be
executed with the same result for same equivalence class
Test Case
Is the container of the measure with all the information related. It will contain one
or more script for different test contexts if the interaction will change. Defining the
test cases implies that the equivalence classes for the requirement are identifed.
SS The system shall determine the drop
order on the aircraft when load dropped
TC Verify that the system correctly determines
the drop order of the aircraft when load
dropped
Test Inputs / Conditions:
•Aircraft loaded with 5 x 200 kg
•Flight Condition: 10.000 feet
SCRIPT
•Ensure Current Balance for the actual load
•Drop one of the 200kg weight load from the aircraft
•Verify that the drop sequence is calculated correctly
162
© Leonardo - Finmeccanica - Società per azioni
Equivalence Classes
To do some test compression, we can divide dimensions in four distinct disjoint sets:
In-set values (more than 18)
values in this set represent an expected case of the requirement. All values in the in-set are
represented by one central value of the set.
The user shall have more than 18 years to drink beer
In-set values: 25
Out-set values (not more than 18)
values in this set represent a negative of the expected case expressed in the requirement.
All values out-set are represented by one value of the set.
The user shall have more than 18 years to drink beer
Out-set values: 10
On-Boundary values ( between 17 and 18)
values in this set represent limits that are close to In-set and Out-set values. Because
defects tends to be generated also by rounding and flooring of values, these On-Boundary
values may give some reliability of the behavior and meta-stable behavior.
The user shall have more than 18 years to drink beer
On-Boundary values: 17.9999999 and 18.0000001 (if 1 exp -9 precision floats used)
Invalid-set values
Values that cannot be part of the requirement by domain
The user shall have more than 18 years to drink beer
Off-set values: -0.01, NaN, Infinite
© Leonardo - Finmeccanica - Società per azioni
163
Manual Test Script: Goals and Definition
1
2
3
© Leonardo - Finmeccanica - Società per azioni
164
Define test case design
You can describe the test procedure also using steps.
3
1
2
165
© Leonardo - Finmeccanica - Società per azioni
Manual Script Automatic Generation
Specifies terms that indicate when a test case design statement
should be a reporting step within the generated manual test script
Should be reviewed and updated as required after designing a test
case and before generating a manual test script from a test case
design
1
3
2
166
© Leonardo - Finmeccanica - Società per azioni
Labs 11: Detail a test case and Update the manual script
preferences
• Complete these tasks:
Complete sections of the test case.
Define a test case design.
Update the manual script preferences.
167
© Leonardo - Finmeccanica - Società per azioni
Keywords in Rational Quality Manager
Keywords are reusable test scripts that consist of one statement or more
related statements. Think of keywords as “mini-scripts”.
You can reuse keywords in multiple test scripts.
Keywords provide one location for frequently-used sequences, and therefore
reduce test script maintenance.
You can use keywords exclusively or combined with local statements in a
test script.
Keywords can be associated with manual or automated test scripts.
168
© Leonardo - Finmeccanica - Società per azioni
Keywords view
The Keywords view is a repository for reusable content. In this view, you can
do these activities:
– Create keywords
– Filter keywords by name and tag
– Edit keyword name and tags
169
© Leonardo - Finmeccanica - Società per azioni
Creating keywords
Click Construction > Browse Keywords
On the toolbar, click Create Keyword
Type a name and tags for searching
Associate the keyword with a test script, or
create keyword content
170
© Leonardo - Finmeccanica - Società per azioni
Creating keywords from existing statements
Shift+Click to select a series of statements in a test script
Drag the selected statements to the Keyword View
2
1
171
© Leonardo - Finmeccanica - Società per azioni
Creating keywords from existing statements
(continued)
Type a name and tags
Choose whether to replace statements in the test script with the new
keyword
3
4
The new keyword is added
to the Keyword View and
inserted into the test script
172
© Leonardo - Finmeccanica - Società per azioni
Keywords in a script
Keywords have these characteristics:
– More indentation than local statements
– The keyword icon
– Read-only in the test script
– Changes to the source content (the keyword script) are reflected
immediately
The keyword icon and the name
of the keyword are followed by
statements in the keyword script
173
© Leonardo - Finmeccanica - Società per azioni
Insert keyword example
2
1
174
© Leonardo - Finmeccanica - Società per azioni
7
Test Execution
175
© Leonardo - Finmeccanica - Società per azioni
7. Test Execution
In this module we will address the following topics:
1. Test Case Execution Record
2. Test Execution Record and Test Context
3. Automatic Test Execution environments
4. Integrating RQM with Automatic Test Environments
5. Tracking results with IBM Rational Toolchain
6. Verification of the test results
7. Doors-RQM Integration for detecting suspects
8. Doors and DNG (Doors Next Generation)
9. History of test execution with TCER/Plan Execution Records
10.Regression and Non-Regression Testing
11.Automatic Test Script Execution tools
176
© Leonardo - Finmeccanica - Società per azioni
Run a single Test Case
Run a test case or a test case execution record.
Run the test case
In the Test Case
Execution Records
run the test
177
© Leonardo - Finmeccanica - Società per azioni
Manual script execution view
Progress indicator
Script execution toolbar
Current step
pointer
Work through a manual test by
alternating between the execution
view and the AUT, performing steps
and applying results.
178
© Leonardo - Finmeccanica - Società per azioni
Script execution toolbar
Pass
Click to Pause Execution
Fail
Apply All
Create New Defect
Show/Hide
Comments
Column
Comments
Attachments
Link To Existing Defect
179
© Leonardo - Finmeccanica - Società per azioni
Test run completed
The test is finished running when:
– Execution completed is displayed at the end of the script steps and in
the upper-right corner of the script.
– The progress indicator shows 100%.
180
© Leonardo - Finmeccanica - Società per azioni
About execution results
Execution
result
Generated when a test run is complete
Two types:
– Test case results (TCER)
– Test suite results (TSER)
Linked to the execution record (TCER or TSER)
Sections of the result artifact contain information about the test run
Each result is added to previous results, providing a complete history
181
© Leonardo - Finmeccanica - Società per azioni
Reviewing test results: Result details (1 of 2)
Summary information
You can change the
actual result value to fit
your own interpretation
of the test run.
Result
sections
Step results by type
182
© Leonardo - Finmeccanica - Società per azioni
Reviewing test results: Result details (2 of 2)
Result applied to each step
Manual test script steps are
shown with their results.
Actual results recorded
during the test run
Requirement that
the step validates
Links to attachments
and defects that were
associated to the step
during the test run
183
© Leonardo - Finmeccanica - Società per azioni
Reviewing test results: Weight distribution
Use weight distribution sliders to reflect different results for portions of the test.
25 Passed points
+13 Failed points
38 Attempted points
In this example, 38 points were attempted, and the remaining points were
blocked by the failed step.
184
© Leonardo - Finmeccanica - Società per azioni
Associate a blocking defect with a TCER
Link To
Existing
Defect
1
2
Create New
Defect
3
4
5
The resulting defect
has a Blocks link to
the TCER in RTC
185
© Leonardo - Finmeccanica - Società per azioni
Lab 12: Run the test case
• Complete these tasks:
Run the test case
Access the Test Case Execution
Record
Access the Execution Result of the Test
Case Execution Record
186
© Leonardo - Finmeccanica - Società per azioni
Lab 13: Examine a test result
• Complete these tasks:
Open and review a manual test case
result.
Change the actual result and weight
distribution.
Make the associated defect a blocking
defect.
187
© Leonardo - Finmeccanica - Società per azioni
Test Execution Record and Test Context
…Test Plan
Test Suite…
Test Suite
Execution Record
(TSER)…
Test Case
Execution Record
(TCER)…
188
© Leonardo - Finmeccanica - Società per azioni
Automatic Test Execution Integration: RFT
Click Start > All Programs > IBM Software Delivery
Platform > IBM Rational Functional Tester > Adapter
to Rational Quality Manager > Configure Adapter.
2
3
1
4
5
189
© Leonardo - Finmeccanica - Società per azioni
Run a Rational Functional Tester test (1 of 2)
1
The Script Type column
identifies the tool in which
the test script was created.
© Leonardo - Finmeccanica - Società per azioni
190
Run a Rational Functional Tester test (2 of 2)
Adapter status
information
The computer
and adapter
on which the
test script will
be run
2
3
191
© Leonardo - Finmeccanica - Società per azioni
Rational Functional Tester test script playback
The execution view and the Rational Functional Tester playback monitor.
The execution view shows the
computer details, the adapter that is
in use, the test environment, and a
progress indicator.
On RFT Client
The automated test script that is running
The active test script statement
192
© Leonardo - Finmeccanica - Società per azioni
Reviewing Rational Functional Tester test
results (1 of 2)
The overview and weight distribution sections are similar to those for a manual
test result.
193
© Leonardo - Finmeccanica - Società per azioni
Reviewing Rational Functional Tester test
results (2 of 2)
Verification
point summary
Distribution of
step results
Each Rational Functional Tester test
script step is listed with its script line
number and the result of performing the
step.
Rational Functional Tester logs
are attached.
© Leonardo - Finmeccanica - Società per azioni
194
Rational Functional Tester simple log
The simple log is a text-based
log of events that occurred
during the run of the Rational
Functional Tester test script. It
opens in a web browser.
195
© Leonardo - Finmeccanica - Società per azioni
Rational Functional Tester detailed log
The detailed log opens in the Rational
Functional Test Log viewer (available only if
Rational Functional Tester is installed on
the computer on which you want to view the
log).
196
© Leonardo - Finmeccanica - Società per azioni
Tracking result with Rational Toolchain (RQM) Live
197
© Leonardo - Finmeccanica - Società per azioni
IBM Rational RELM
When reports are too flat, you can use RELM*
IBM Rational RELM is the tool to layout graphical queries result
transversing overall asset showing their status
Interfaces and extract artifacts from
Quality Management
Requirement Managmenet
Change Management
Design Management
Extract artifacts using query and filters
Queries and draws links between artifact types
Free-form dashboard to visually track results and status
Analyzing artifacts dependencies using ontologies
Understanding what’s wrong
(*) Requires RELM license
© Leonardo - Finmeccanica - Società per azioni
198
Tracking result with Rational Toolchain (RELM)
199
© Leonardo - Finmeccanica - Società per azioni
Example Using Ontologies
Verification of the test results
Suite:
200
© Leonardo - Finmeccanica - Società per azioni
Doors-RQM Integration for detecting suspects
When the requirement in Doors changes, the test case is marked as Suspect
Is up to the test designer understand what the difference is and accordly update
the test case and test case script
201
© Leonardo - Finmeccanica - Società per azioni
Doors and Doors Next Generation
Doors is the mature rich-client based Requirement Management Tool
Doors Next Generation is the web-based rich-client Requirement
Management Tool
202
© Leonardo - Finmeccanica - Società per azioni
Doors Next Generation Capabilities
Figure 1: (Formal) Modules
Figure 3: Processes and flows
© Leonardo - Finmeccanica - Società per azioni
Figure 2: Graphical UI Sketches
Figure 4: Device UI Sketches and Storyboards
203
Test Traceability in Doors and Doors NG
Doors
Doors NG
204
© Leonardo - Finmeccanica - Società per azioni
History of Test Execution With TCER and Test Plan
For the single Test Case
Newest
Oldest
For the Test Plan
Newest
Oldest
© Leonardo - Finmeccanica - Società per azioni
205
Regression and Non-Regression Testing
Regression Testing
Verifying that the system continues to work
Non-Regression Testing
Verifying that the new added changes works as expected
@Release 1
Release 1
Verification
Plan
Release 1
NonRegression
Verification
Plan
Test Cases
@Release 2
+
Release 2
Verification
Plan
Release 2
NonRegression
Verification
@Release 3
+
Release 3
Verification
Plan
Release 3
Nonregression
Verification
206
© Leonardo - Finmeccanica - Società per azioni
Integrating RQM with Automatic Test Environments
RQM
TC
Script Ref
RQM can integrate with any external test engine
using one agent.
Many agents can be registered on the RQM
application inside the QM Project Area
If not already existent, may be implemented (requires
API usage and code implementation)
Agent Hub
External Test
Engine
Run
TCER
Result
Create
Define
Maintain
Adapter
Browse / References
External Test Script
Repo Script
Third Party Tool
207
© Leonardo - Finmeccanica - Società per azioni
Automating Tests Script Execution
Out of the box, you can run automated test scripts that were created with:
Rational Functional Tester
Rational Performance Tester
Rational Service Tester for SOA Quality
Rational Robot
Rational AppScan Tester Edition
Command-line adapter (any tool/technology)
Third-party Adapters
NI Test Integration for TestStand and LabView (National Instruments)
Squish for QT (Frologic)
Configure and run the corresponding adapter.
The test script in the Quality Management application contains a reference
to the test script that was created in the external tool.
208
© Leonardo - Finmeccanica - Società per azioni
8
Reporting & Collaboration
209
© Leonardo - Finmeccanica - Società per azioni
8. Reporting & Collaboration
In this module we will address the following topics:
1.
2.
3.
4.
5.
6.
Test Team Load and Test Completeness Reports
Dashboards
Measuring Test Coverage of Requirements and Releases
Reporting using Report Designer
Reporting using IBM Rational Publishing Engine
Generating MIL-STD 498 documents
210
© Leonardo - Finmeccanica - Società per azioni
Reporting with RQM
In RQM Reports may be shared or personal
Shared reports can be generated by the user selecting already deployed
reports or developing customized one (need Rational for Developer
Intelligence)
Each report may have specific parameters to filter in informations to render
on it
211
© Leonardo - Finmeccanica - Società per azioni
Shared reports view
Select a report folder to see its individual reports.
Report types
Filter reports
list
Execution reports
212
© Leonardo - Finmeccanica - Società per azioni
Reports toolbar and actions
Import Custom Report
Create Folder
Create Report
Refresh
Delete Report
Move/Copy Report
Delete
Report
Edit
Move/
Copy
Report
213
© Leonardo - Finmeccanica - Società per azioni
Report parameters
Each report has its own set of parameters.
214
© Leonardo - Finmeccanica - Società per azioni
Parameter dependencies
Some parameters are dependent on the values selected for a related
parameter.
Some test milestones
are listed twice because
they are associated with
two test plans.
Dependency indicator
Selecting a test plan limits the Test
Milestones list to test milestones that are
associated with the selected test plan.
© Leonardo - Finmeccanica - Società per azioni
215
Report descriptions
Read the report description to understand the intended purpose of a report.
216
© Leonardo - Finmeccanica - Società per azioni
The Quality Management project dashboard
“My Task” Widget
217
© Leonardo - Finmeccanica - Società per azioni
Add a widget to the dashboard
You can customize your dashboard
by adding widgets.
1
5
2
3
4
218
© Leonardo - Finmeccanica - Società per azioni
Add a page to the dashboard
Click the Add New Tab
button to create a page
for the dashboard.
Copy a tab to paste to
another dashboard.
Double-click to edit
the page name.
Duplicate a tab within
this dashboard.
Change the
page layout.
219
© Leonardo - Finmeccanica - Società per azioni
Configuring shown widgets
You can change the appearance or content of a widget.
Appearance options
are the same for all
widgets.
Settings options vary by the
type of widget. The settings
that you see apply to the type
of content that the widget
displays.
© Leonardo - Finmeccanica - Società per azioni
220
Dashboards
There are:
One personal dashboard for each Jazz Member
One team dashboard for each Jazz Team
One Project Area Dashboard for each Project Area
Widget Sources
External Widget Sources
Example
© Leonardo - Finmeccanica - Società per azioni
221
Measuring Test Coverage of Requirements and Releases
RQM Test Case
© Leonardo - Finmeccanica - Società per azioni
Requirement
RTC
Workitem
Script
Requirement
Closed
Missing
New/Open
Script Pass
Script Fail
Missing
No result
Missing Script
222
Reporting using Report Designer
Starting from Jazz 6.0 platform version, a Report Designer is included in the
Jazz Plaform
With Report Designer, starting from any artifact you can:
Design tabular reports and graphical reports
Extract data following link and presenting in the reports
Adding any attribute data of the involved artifacts to the report
Add calculated value columns to the report
It is very simple to use
223
© Leonardo - Finmeccanica - Società per azioni
Report Designer Creation Wizard - Data
https://<jazz-server:port>/rs
1
Choose Report Type
2
Choose an Artifact
3
Choose Relation
224
© Leonardo - Finmeccanica - Società per azioni
Report Designer Creation Wizard - Formatting
225
© Leonardo - Finmeccanica - Società per azioni
Report Designer Creation Wizard – Saving Definition
226
© Leonardo - Finmeccanica - Società per azioni
Resulting Report
227
© Leonardo - Finmeccanica - Società per azioni
Report Designer Creation Wizard – Graphical Trend
1
2
3
228
© Leonardo - Finmeccanica - Società per azioni
Report Designer Creation Wizard – Graphical Trend
229
© Leonardo - Finmeccanica - Società per azioni
Rational Publishing Engine Overview
Rational Publishing Engine is a generic tool to extract
information from external data sources (as tools, files,
databases) and render it on a document, following one
design template.
It needs to know and understand the domain that will
import
For each tool / repository supported, RPE will have an
Input Loader that can implicit reference an input
schema or, for example using XML or REST, need one
definition for it.
230
© Leonardo - Finmeccanica - Società per azioni
Rational Publishing Engine (RPE)
Document
Template
Document
Template
Document
Template
Document
Specification
Input
Loaders
Core
Output
Formatters
Data
Output
Document template
– Defines structure of input sources
– Defines output document content and hierarchy
– Relates input to output using queries
Document specification
– Associates concrete data with the input sources of document template(s)
– Defines concrete output document types
© Leonardo - Finmeccanica - Società per azioni
231
RPE Output Formatters
Word – Microsoft® Word®
– Generates documents in 2
Word formats – ‘97-2003
(.doc)’ and ‘2007 (.docx)’
– Documents can be opened by
any version of Word that
supports either of those
formats
– Supports *.dot stylesheets
– Can run a macro after
document generation, which is
defined in the *.dot file
PDF – Adobe® Portable
Document® files
XslFo – XSL Formatting
Objects
– XML based standard defined
by W3ORG
– 3rd party tools available for
converting XSL-FO to various
other formats
HTML – Browser web pages
– Supports *.css style sheets
232
© Leonardo - Finmeccanica - Società per azioni
RPE Input Loaders
DOORS Database – Database structure from Rational® DOORS®
DOORS – Requirement modules from Rational® DOORS®
Rational Publishing Engine supports Rational® DOORS® version 9.1 and above
Tau – projects containing UML-2 models and diagrams
Rational Publishing Engine supports Rational® Tau™ version 4.2.0.1 and above
Generic XML – information stored in XML files
any XML file matching the information structure definition of the document template
REST – Information provided by a RESTful web-service interface with the needed
capabilities for Rational Publishing Engine (Rhapsody is supported through REST
Integration and domain.xsd document)
233
© Leonardo - Finmeccanica - Società per azioni
Doors Database Input Loader
Worldwide unique database ID
Follow this URL to open database in a
DOORS browser
Recursive folder structure allows
reporting with recursive queries
Projects have “true” here
Modules inside Folder/Project
No information about baselines, yet
Fullname and id allow configuration of
dynamic data source
“Formal”, “Link” or “Descriptive”
Follow URL to open the module
© Leonardo - Finmeccanica - Società per azioni
234
Rational Quality Manager Reporting API
Feed Schema
https://[host]:[port]/[contextRoot]/service/com.ibm.rqm.integration.service.IIntegrationService/schema/feed.xsd
Quality Manager Schema
https://[host]:[port]/[contextRoot]/service/com.ibm.rqm.integration.service.IIntegrationService/schema/qm.xsd
Feed Query Endpoint
https://[host]:[port]/[contextRoot]/service/com.ibm.rqm.integration.service.IIntegrationService/resources/[Project Area name]/[object]
Objects
adapter
catalog
configuration
executionresult
executionworkitem
jobscheduler
objective
requirement
resourcegroup
teamarea
testphase
testsuitelog
© Leonardo - Finmeccanica - Società per azioni
attachment
category
contributor
executionscript
instructions
keyword
projects
reservation
step
template
testplan
workitem
builddefinition
categoryType
datapool
executionsequence
job
labresource
remotescript
resource
suiteexecutionrecord
testcase
testscript
buildrecord
channel
executionelementresult
executionsequenceresult
jobresult
labresourceattribute
request
resourcecollection
tasks
testcell
testsuite
235
RPE - Template Document Principle
236
© Leonardo - Finmeccanica - Società per azioni
9
Teamwork for Testing
237
© Leonardo - Finmeccanica - Società per azioni
9. Teamwork for testing
In this module we will address the following topics:
1. Defining and allocating test resources on test activities
2. Test Activity management
3. Review and approvals
238
© Leonardo - Finmeccanica - Società per azioni
Rational Quality Manager Labs
To manage labs and resources, Rational Quality Manager uses this simple mechanism:
Lab
Inventory
Lab Resource
Group
Request
Cell
Lab Resource
Reservation
Test Suite
Run
Test
Environment
239
© Leonardo - Finmeccanica - Società per azioni
When Running Test Suites
For Environment
In Cell
240
© Leonardo - Finmeccanica - Società per azioni
Devices Inventories
241
© Leonardo - Finmeccanica - Società per azioni
The cell where the test will take place…
242
© Leonardo - Finmeccanica - Società per azioni
Planning the availability of the devices…
243
© Leonardo - Finmeccanica - Società per azioni
Test Activity Management – Lifecycle sample
Define Test Plan
Goals
Define Test
Cases
Define
Review
Define
Review
Define Test
Suites
Define Test
Scripts
Run Tests
Define
Define
Approve
Approve
Review
Review
Approve
Approve
Run
Review
Approve
244
© Leonardo - Finmeccanica - Società per azioni
Review and approval
Peer Reviewers
Approver
One or more Approvals can be requested for different means
© Leonardo - Finmeccanica - Società per azioni
245
Customizable special behaviors (samples)
Auto-lock Triggers
When the object is moved to Approved state, a lock is applied.
When the object is moved to Draft state, the lock is removed.
…
Save Restrictions
If the object is in Approved state, prevent save
Do not permit Under Review state until all Quality Task items are
resolved
Do not approve if review pending
…
246
© Leonardo - Finmeccanica - Società per azioni
250
© Leonardo - Finmeccanica - Società per azioni
Download