SlideShare a Scribd company logo
1 of 36
An Entity Model of
Software Testing:
A Foundation for the Future
John Kent: john.kent@simplytesting.com
An Entity Model of
Software Testing:
A Foundation for the Future
• Discussions at the Test Retreat
• A work in progress
• Building Test Management Tools
• A Test Entity Model could be used for:
– Software Testing
– All types of systems testing
The Need for an Entity Model
• Define the language
• The Software Testing Cannon
– Myers, etc...
– IEEE 829
– BSI 7925
– ISEB
– ISTQB
• For test tools to be built which implement a
real model of testing
• How can we train testers without a clear
picture of testing?
• Future standards, text books and test tools
should be based upon an agreed entity model
• Entity Relationship Diagram - ER Diagram
– Entities
• Uses rectangle
– Relationships between entities
• Uses ellipse symbol
• Many shown as
– Entities have Attributes
Entity Relationship Modeling
Singer
Song
Performs
Song
Sources
• Standards
– BSI 7925
– IEEE 829
• Training Courses
– ISEB
– ISTQB
• Glossary
• Syllabus
• Experience
• Test Retreat discussions
• Discussions with testers
Where We Are Now
• In many organisations tests look like this:
– Test Script
• Test Steps
– Input
– Expected Output
Inputs
Expected
Outcomes
IEEE 829 Entity Relationship
Diagram
• No System Specifications
• No Test Conditions
• Relationships ill-defined
• Tries to describe all possible relationships –
not just one way of doing things
• We will build the model by:
1. Using a possible relationship example then…
2. Make statements about the relationships
The Entities
• Test Entities include:
– Specifications
– Test Conditions
– Test Cases
– Test Scripts
– Test Steps
– Test Execution Schedule
– Test Results
• Not included here
– Defects
– Test Plans
– Test Strategies
– Test Coverage Items
Entity: Specification Item
• An indivisible, testable part of a specification
• Also called Test Basis
• Requirement Specification
– User Reqt
– Legal Reqt
– Performance Reqt
– Security Reqt
– etc...
• Design/Functional Specification
• Attributes
– Description
– Risk
– Priority
– …
Entity: Test Condition
• Definition
– ISTQB definition
• "An item or event of a component or system that could be verified
by one or more test cases, e.g. a function, transaction, feature,
quality attribute, or structural element."
– 7925 definition – not defined
– Attributes
• Description
• Risk
• Priority
• A statement of required system behavior under certain conditions
• A refinement of the specification (from a test perspective)
• Could be considered to be a specification item
Entity: Test Case
• Definition
– ISTQB: “A set of input values, execution preconditions, expected
results and execution postconditions, developed for a particular
objective or test condition, such as to exercise a particular
program path or to verify compliance with a specific
requirement. [After IEEE 610]”
– 7925: “A document providing detailed instructions for the
execution of one or more test cases”
– Attributes
• Described by IEEE 829
• Input
• Expected Output
• Preconditions
• Objective
– Re-use?
Entity: Test Script
• Definition
– Also called Test Procedure
– ISTQB: Test Procedure – “A document
specifying a sequence of actions for the
execution of a test. Also known as test script
or manual test script. [After IEEE 829]”
• Consists of Test Steps….
• A sequence of test cases?
Entity: Test Step
• Definition
– ISTQB: not defined
– 7925: not defined
• But they do exist – I’ve seen them!
Entity: Test Execution Schedule
• Tests run sequence
• ISTQB: “A scheme for the execution of
test procedures. The test procedures are
included in the test execution schedule
in their context and in the order in which
they are to be executed”.
Entity: Test Result
• ISTQB: Result:
– “The consequence/outcome of the execution
of a test. It includes outputs to screens,
changes to data, reports, and communication
messages sent out.”.
• 7925: Actual Outcome:
– “The behavior actually produced when the
object is tested under specified conditions”.
Relationship: Specifications to Test Conditions
Example – an Asset Management System
Spec: Assets
Spec: Add Assets
Spec: Delete Assets
TCond: Test that cannot delete an Asset when
used in an active work order
TCond: Test that cannot delete an Asset when
used in an active job planA Specification can ‘link’ to
many Test Conditions
TCond: Test that can delete an Asset when
used in an inactive work order
TCond: Test that can delete an Asset when
not used in a job plan or work order
TCond: Test that can delete an Asset when
used in an inactive job plan
Together the Specifications and
Test Conditions can make up a
model of the system under test
Relationship: Specifications to Test Conditions(Cont)
Req Spec: Assets
Req Spec: Add Assets
Req Spec: Delete Assets
TCond: Test that cannot delete an Asset when
used in an active work order
TCond: Test that cannot delete an Asset when
used in an active job plan
TCond: Test that can delete an Asset when
used in an inactive job plan
TCond: Test that can delete an Asset when
used in an inactive work order
TCond: Test that can delete an Asset when
not used in a job plan or work order
Design Spec: Assets
Design Spec: Delete Asset
Menu item
A Test condition could link to
many specifications
Relationship: Test Conditions to Test Cases
TCond: Test that can delete an Asset when
not used in an active job plan or work order
TCase:
Pre-condition: An asset linked
to an inactive Job Plan
Input: Select ‘Delete Asset’ menu
item
Expected Outcome: Asset
removed from list
TCond: Test that can delete an Asset when
used in an inactive job plan
TCond: Test that Asset is removed from
the asset list when deleted
The Objective (IEEE
829) attribute in this
definition of a Test
Case is the linked
test conditions
A Test Case can link to many
Test Conditions
Relationship: Test Conditions to Test Cases(cont)
TCase:
Pre-condition: An asset linked
to an inactive Job Plan
Input: Select ‘Delete Asset’ menu
item
Expected Outcome: Asset
removed from list
TCond: Test that Asset is removed from
the asset list when deleted
TCase:
Pre-condition: An asset linked
to an inactive Work Order
Input: Select ‘Delete Asset’ menu
item
Expected Outcome: Asset
removed from list
TCase:
Pre-condition: An asset not linked
to a Work Order or Job Plan
Input: Select ‘Delete Asset’ menu
item
Expected Outcome: Asset
removed from list
A Test Condition can link to many
Test Cases
Relationship: Test Cases to Test Scripts
A Test Script can
consist of many
Test Cases
A Test Case may
appear in many
Test Scripts
Test Script 2:
Test Script 1:
Test Step: 3
Test Case: 2
Test Case: 1
Test Step: 9
Test Case: 2
Test Case: 7
Test Case: 2
This is test case re-use
Test Script 1: Asset Tests
Relationship: Test Scripts to Test Steps
Test Step: 3
Pre-condition: An asset linked to inactive JobP
Input: Select ‘Delete Asset’ menu item
Expected Outcome: Asset removed from list
Test Step: 2
Pre-condition: An active job plan
Input: Select ‘Inactivate Asset’ Menu item
Expected Outcome: Asset status=Inactive
Test Step: 1
Select an job plan with
Status= Active
An Asset linked
A Test Step is a
Test Case in a
Test Script
Test Script 2:
Test Script 1:
Relationship: Test Steps to Test Execution
Schedules
Test Step: 3
Test Step: 2
Test Step: 1
Test Step: 3
Test Step: 2
Test Step: 1
Test Execution Schedule 1
Script 1 - Test Step 1
Script 2 - Test Step: 2
Script 1 - Test Step: 2
Test Execution Schedule 2
Script 1 - Test Step 2
Script 2 - Test Step: 2
Script 1 - Test Step: 3
A Test Execution
Schedule can contain
many Test Steps
A Test Step can be
used in many Test
Execution Schedules
Test Script2:
Test Script1:
Test Execution Schedule 1
Test Script 1
Test Script 8
Test Script 7
Test Execution Schedule 2
Test Script 2
Test Script 7
Test Script 1
A Test Execution
Schedule can contain
many entire Test Scripts
An entire Test Script can
be used in many Test
Execution Schedules
Relationship: Test Scripts to Test Execution
Schedules
Relationship: Test Execution Schedules to Test
Results
Test Execution Schedule
Script 1 - Test Step 1
Script 2 - Test Step: 2
Script 1 - Test Step: 2
Test Results: Run 1
Test Results: Run 2
Test Results: Run 3
A Test Execution
Schedule can
appear in many
Test Results
The ‘Full’ Test Entity Model
Specification Item
Test Condition
Test Case
Test Script
Test Step
Test Execution Schedule
Test Results
The ‘Full’ Test Entity Model
Specification Item
Test Condition
Test Case
Test Script
Test Step
Test Execution Schedule
Test Results
Test Execution Results must
be traceable back through
all of the relationships to the
specifications or
requirements
The major difference between the Theory and
Real World is the Real World contains time
and therefore work we do is incomplete
• It takes time to build the entities
• It takes time to build the relationships between entities
• What test entities we build depend on the time we have
• The level of detail in specifications and tests is
dependent upon time
– Requirements are incomplete
– Test conditions are also incomplete
Real World Waterfall Model
Code what you can from
specs and make up the rest.
Bugs always included
Specify the Syst Design
incompletely with errors
Produce Requirements
which are incomplete and
slightly wrong
There is an over-emphasis on test
scripts because it is generally
accepted that testers write scripts.
Often we could get greater test
coverage by producing more test
conditions which we could execute
directly and not waste time on
scripting.
Because Requirements are
incomplete we need Test
Conditions to describe the
system – we produce a list
of incomplete Test
Conditions
Additions to the ‘Full’ Test Entity Model
Specification Item
Test Condition
Test Case
Test Script
Test Step
Test Execution Schedule
Test Results
We could get
greater test
coverage by
producing more
test conditions
which we could
execute directly.
Writing TCs
gives faster test
coverage
We have seen that TCs are a form
of spec so it would be possible to
execute the specifications directly
in some test projects
Simplified Test Entity Model 1
Specification Item
Test Condition
Test Execution Schedule
Test Results
Test conditions
executed directly using
testers knowledge to
provide missing steps
Simplified Test Entity Model 2
Test Script
Test Step
Specification Item
Test Condition
Test Execution Schedule
Test Results
Entity Model used in
Quality Center and
Test Director
Many test teams
don’t use this bit
Introduces another
addition to the ‘Full’
Model:
TCond to Test Script
So they cannot
measure test
coverage against
requirements
May be difficult to implement full model
in a database tool – lots of many to
many relationships
Simplified Test Entity Model 3
Test Script
Test Step
Test Execution Schedule
Test Results
Specification Item
Test Condition
This is where many test
organisations are
They may be better off doing this
Summary
Summary
• Full Entity Model Not Completely Defined
– Entities not well defined
– Relationships not well defined
– Attributes not defined – Risk?
– Entities left out, Test Coverage, Test Plan
• Once we understand the full entity model we may
be able to see more/better ways to test
• In the real world we are likely to use a simplified
version of the Entity Model

More Related Content

What's hot

Edwin Van Loon - How Much Testing is Enough - EuroSTAR 2010
Edwin Van Loon -  How Much Testing is Enough - EuroSTAR 2010Edwin Van Loon -  How Much Testing is Enough - EuroSTAR 2010
Edwin Van Loon - How Much Testing is Enough - EuroSTAR 2010TEST Huddle
 
T19 performance testing effort - estimation or guesstimation revised
T19   performance testing effort - estimation or guesstimation revisedT19   performance testing effort - estimation or guesstimation revised
T19 performance testing effort - estimation or guesstimation revisedTEST Huddle
 
'Growing to a Next Level Test Organisation' by Tim Koomen
'Growing to a Next Level Test Organisation' by Tim Koomen'Growing to a Next Level Test Organisation' by Tim Koomen
'Growing to a Next Level Test Organisation' by Tim KoomenTEST Huddle
 
Dirk Van Dael - Test Accounting - EuroSTAR 2010
Dirk Van Dael - Test Accounting - EuroSTAR 2010Dirk Van Dael - Test Accounting - EuroSTAR 2010
Dirk Van Dael - Test Accounting - EuroSTAR 2010TEST Huddle
 
Anders Claesson - Test Strategies in Agile Projects - EuroSTAR 2010
Anders Claesson - Test Strategies in Agile Projects - EuroSTAR 2010Anders Claesson - Test Strategies in Agile Projects - EuroSTAR 2010
Anders Claesson - Test Strategies in Agile Projects - EuroSTAR 2010TEST Huddle
 
Beata Karpinska - Testing and Lean Principles - EuroSTAR 2010
Beata Karpinska - Testing and Lean Principles - EuroSTAR 2010Beata Karpinska - Testing and Lean Principles - EuroSTAR 2010
Beata Karpinska - Testing and Lean Principles - EuroSTAR 2010TEST Huddle
 
Rob Baarda - Are Real Test Metrics Predictive for the Future?
Rob Baarda - Are Real Test Metrics Predictive for the Future?Rob Baarda - Are Real Test Metrics Predictive for the Future?
Rob Baarda - Are Real Test Metrics Predictive for the Future?TEST Huddle
 
Ane Clausen - Success with Automated Regression Test revised
Ane Clausen - Success with Automated Regression Test revisedAne Clausen - Success with Automated Regression Test revised
Ane Clausen - Success with Automated Regression Test revisedTEST Huddle
 
John Brennen - Red Hot Testing in a Green World
John Brennen - Red Hot Testing in a Green WorldJohn Brennen - Red Hot Testing in a Green World
John Brennen - Red Hot Testing in a Green WorldTEST Huddle
 
Isabel Evans - Working Ourselves out of a Job: A Passion For Improvement - Eu...
Isabel Evans - Working Ourselves out of a Job: A Passion For Improvement - Eu...Isabel Evans - Working Ourselves out of a Job: A Passion For Improvement - Eu...
Isabel Evans - Working Ourselves out of a Job: A Passion For Improvement - Eu...TEST Huddle
 
Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success TEST Huddle
 
'Architecture Testing: Wrongly Ignored!' by Peter Zimmerer
'Architecture Testing: Wrongly Ignored!' by Peter Zimmerer'Architecture Testing: Wrongly Ignored!' by Peter Zimmerer
'Architecture Testing: Wrongly Ignored!' by Peter ZimmererTEST Huddle
 
Saksham Sarode - Building Effective test Data Management in Distributed Envir...
Saksham Sarode - Building Effective test Data Management in Distributed Envir...Saksham Sarode - Building Effective test Data Management in Distributed Envir...
Saksham Sarode - Building Effective test Data Management in Distributed Envir...TEST Huddle
 
Henrik Andersson - Exploratory Testing Champions - EuroSTAR 2010
Henrik Andersson - Exploratory Testing Champions - EuroSTAR 2010Henrik Andersson - Exploratory Testing Champions - EuroSTAR 2010
Henrik Andersson - Exploratory Testing Champions - EuroSTAR 2010TEST Huddle
 
Test strategy &-testplanning
Test strategy &-testplanningTest strategy &-testplanning
Test strategy &-testplanningsrivinayak
 
Geoff Thompson - Why Do We Bother With Test Strategies
Geoff Thompson - Why Do We Bother With Test StrategiesGeoff Thompson - Why Do We Bother With Test Strategies
Geoff Thompson - Why Do We Bother With Test StrategiesTEST Huddle
 
Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and PlanningTechWell
 
Vipul Kocher - Software Testing, A Framework Based Approach
Vipul Kocher - Software Testing, A Framework Based ApproachVipul Kocher - Software Testing, A Framework Based Approach
Vipul Kocher - Software Testing, A Framework Based ApproachTEST Huddle
 
Edwin Van Loon - Exploitation Testing revised
Edwin Van Loon - Exploitation Testing revisedEdwin Van Loon - Exploitation Testing revised
Edwin Van Loon - Exploitation Testing revisedTEST Huddle
 

What's hot (20)

Edwin Van Loon - How Much Testing is Enough - EuroSTAR 2010
Edwin Van Loon -  How Much Testing is Enough - EuroSTAR 2010Edwin Van Loon -  How Much Testing is Enough - EuroSTAR 2010
Edwin Van Loon - How Much Testing is Enough - EuroSTAR 2010
 
T19 performance testing effort - estimation or guesstimation revised
T19   performance testing effort - estimation or guesstimation revisedT19   performance testing effort - estimation or guesstimation revised
T19 performance testing effort - estimation or guesstimation revised
 
'Growing to a Next Level Test Organisation' by Tim Koomen
'Growing to a Next Level Test Organisation' by Tim Koomen'Growing to a Next Level Test Organisation' by Tim Koomen
'Growing to a Next Level Test Organisation' by Tim Koomen
 
Dirk Van Dael - Test Accounting - EuroSTAR 2010
Dirk Van Dael - Test Accounting - EuroSTAR 2010Dirk Van Dael - Test Accounting - EuroSTAR 2010
Dirk Van Dael - Test Accounting - EuroSTAR 2010
 
Anders Claesson - Test Strategies in Agile Projects - EuroSTAR 2010
Anders Claesson - Test Strategies in Agile Projects - EuroSTAR 2010Anders Claesson - Test Strategies in Agile Projects - EuroSTAR 2010
Anders Claesson - Test Strategies in Agile Projects - EuroSTAR 2010
 
Beata Karpinska - Testing and Lean Principles - EuroSTAR 2010
Beata Karpinska - Testing and Lean Principles - EuroSTAR 2010Beata Karpinska - Testing and Lean Principles - EuroSTAR 2010
Beata Karpinska - Testing and Lean Principles - EuroSTAR 2010
 
Rob Baarda - Are Real Test Metrics Predictive for the Future?
Rob Baarda - Are Real Test Metrics Predictive for the Future?Rob Baarda - Are Real Test Metrics Predictive for the Future?
Rob Baarda - Are Real Test Metrics Predictive for the Future?
 
Ane Clausen - Success with Automated Regression Test revised
Ane Clausen - Success with Automated Regression Test revisedAne Clausen - Success with Automated Regression Test revised
Ane Clausen - Success with Automated Regression Test revised
 
John Brennen - Red Hot Testing in a Green World
John Brennen - Red Hot Testing in a Green WorldJohn Brennen - Red Hot Testing in a Green World
John Brennen - Red Hot Testing in a Green World
 
Isabel Evans - Working Ourselves out of a Job: A Passion For Improvement - Eu...
Isabel Evans - Working Ourselves out of a Job: A Passion For Improvement - Eu...Isabel Evans - Working Ourselves out of a Job: A Passion For Improvement - Eu...
Isabel Evans - Working Ourselves out of a Job: A Passion For Improvement - Eu...
 
Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success
 
'Architecture Testing: Wrongly Ignored!' by Peter Zimmerer
'Architecture Testing: Wrongly Ignored!' by Peter Zimmerer'Architecture Testing: Wrongly Ignored!' by Peter Zimmerer
'Architecture Testing: Wrongly Ignored!' by Peter Zimmerer
 
Saksham Sarode - Building Effective test Data Management in Distributed Envir...
Saksham Sarode - Building Effective test Data Management in Distributed Envir...Saksham Sarode - Building Effective test Data Management in Distributed Envir...
Saksham Sarode - Building Effective test Data Management in Distributed Envir...
 
Henrik Andersson - Exploratory Testing Champions - EuroSTAR 2010
Henrik Andersson - Exploratory Testing Champions - EuroSTAR 2010Henrik Andersson - Exploratory Testing Champions - EuroSTAR 2010
Henrik Andersson - Exploratory Testing Champions - EuroSTAR 2010
 
Test strategy &-testplanning
Test strategy &-testplanningTest strategy &-testplanning
Test strategy &-testplanning
 
Test management
Test managementTest management
Test management
 
Geoff Thompson - Why Do We Bother With Test Strategies
Geoff Thompson - Why Do We Bother With Test StrategiesGeoff Thompson - Why Do We Bother With Test Strategies
Geoff Thompson - Why Do We Bother With Test Strategies
 
Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and Planning
 
Vipul Kocher - Software Testing, A Framework Based Approach
Vipul Kocher - Software Testing, A Framework Based ApproachVipul Kocher - Software Testing, A Framework Based Approach
Vipul Kocher - Software Testing, A Framework Based Approach
 
Edwin Van Loon - Exploitation Testing revised
Edwin Van Loon - Exploitation Testing revisedEdwin Van Loon - Exploitation Testing revised
Edwin Van Loon - Exploitation Testing revised
 

Similar to John Kent - An Entity Model for Software Testing

ISTQBCH2.ppt
ISTQBCH2.pptISTQBCH2.ppt
ISTQBCH2.pptghkadous
 
Get Testing with tSQLt - SQL In The City Workshop 2014
Get Testing with tSQLt - SQL In The City Workshop 2014Get Testing with tSQLt - SQL In The City Workshop 2014
Get Testing with tSQLt - SQL In The City Workshop 2014Red Gate Software
 
Software testing introduction
Software testing introductionSoftware testing introduction
Software testing introductionSriman Eshwar
 
Automated testing overview
Automated testing overviewAutomated testing overview
Automated testing overviewAlex Pop
 
ISTQB Foundation - Chapter 2
ISTQB Foundation - Chapter 2ISTQB Foundation - Chapter 2
ISTQB Foundation - Chapter 2Chandukar
 
ISTQB, ISEB Lecture Notes- 2
ISTQB, ISEB Lecture Notes- 2ISTQB, ISEB Lecture Notes- 2
ISTQB, ISEB Lecture Notes- 2onsoftwaretest
 
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...Ortus Solutions, Corp
 
Sqa, test scenarios and test cases
Sqa, test scenarios and test casesSqa, test scenarios and test cases
Sqa, test scenarios and test casesConfiz
 
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...Uma Ghotikar
 
ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2Yogindernath Gupta
 
Testing Frameworks
Testing FrameworksTesting Frameworks
Testing FrameworksMoataz Nabil
 
Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineeringMansiganeshJawale
 

Similar to John Kent - An Entity Model for Software Testing (20)

ISTQBCH2.ppt
ISTQBCH2.pptISTQBCH2.ppt
ISTQBCH2.ppt
 
ISTQBCH2.ppt
ISTQBCH2.pptISTQBCH2.ppt
ISTQBCH2.ppt
 
Get Testing with tSQLt - SQL In The City Workshop 2014
Get Testing with tSQLt - SQL In The City Workshop 2014Get Testing with tSQLt - SQL In The City Workshop 2014
Get Testing with tSQLt - SQL In The City Workshop 2014
 
Software testing introduction
Software testing introductionSoftware testing introduction
Software testing introduction
 
stlc
stlcstlc
stlc
 
Automated testing overview
Automated testing overviewAutomated testing overview
Automated testing overview
 
ISTQB Foundation - Chapter 2
ISTQB Foundation - Chapter 2ISTQB Foundation - Chapter 2
ISTQB Foundation - Chapter 2
 
stlc
stlcstlc
stlc
 
ISTQB, ISEB Lecture Notes- 2
ISTQB, ISEB Lecture Notes- 2ISTQB, ISEB Lecture Notes- 2
ISTQB, ISEB Lecture Notes- 2
 
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
 
Sqa, test scenarios and test cases
Sqa, test scenarios and test casesSqa, test scenarios and test cases
Sqa, test scenarios and test cases
 
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...
 
Gcs day1
Gcs day1Gcs day1
Gcs day1
 
ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2
 
Testing Frameworks
Testing FrameworksTesting Frameworks
Testing Frameworks
 
Unit testing
Unit testingUnit testing
Unit testing
 
Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineering
 
Ch11lect1 ud
Ch11lect1 udCh11lect1 ud
Ch11lect1 ud
 
Qa documentation pp
Qa documentation ppQa documentation pp
Qa documentation pp
 
Visual Studio Profiler
Visual Studio ProfilerVisual Studio Profiler
Visual Studio Profiler
 

More from TEST Huddle

Why We Need Diversity in Testing- Accenture
Why We Need Diversity in Testing- AccentureWhy We Need Diversity in Testing- Accenture
Why We Need Diversity in Testing- AccentureTEST Huddle
 
Keys to continuous testing for faster delivery euro star webinar
Keys to continuous testing for faster delivery euro star webinar Keys to continuous testing for faster delivery euro star webinar
Keys to continuous testing for faster delivery euro star webinar TEST Huddle
 
Why you Shouldnt Automated But You Will Anyway
Why you Shouldnt Automated But You Will Anyway Why you Shouldnt Automated But You Will Anyway
Why you Shouldnt Automated But You Will Anyway TEST Huddle
 
Being a Tester in Scrum
Being a Tester in ScrumBeing a Tester in Scrum
Being a Tester in ScrumTEST Huddle
 
Leveraging Visual Testing with Your Functional Tests
Leveraging Visual Testing with Your Functional TestsLeveraging Visual Testing with Your Functional Tests
Leveraging Visual Testing with Your Functional TestsTEST Huddle
 
Using Test Trees to get an Overview of Test Work
Using Test Trees to get an Overview of Test WorkUsing Test Trees to get an Overview of Test Work
Using Test Trees to get an Overview of Test WorkTEST Huddle
 
Big Data: The Magic to Attain New Heights
Big Data:  The Magic to Attain New HeightsBig Data:  The Magic to Attain New Heights
Big Data: The Magic to Attain New HeightsTEST Huddle
 
Will Robots Replace Testers?
Will Robots Replace Testers?Will Robots Replace Testers?
Will Robots Replace Testers?TEST Huddle
 
TDD For The Rest Of Us
TDD For The Rest Of UsTDD For The Rest Of Us
TDD For The Rest Of UsTEST Huddle
 
Scaling Agile with LeSS (Large Scale Scrum)
Scaling Agile with LeSS (Large Scale Scrum)Scaling Agile with LeSS (Large Scale Scrum)
Scaling Agile with LeSS (Large Scale Scrum)TEST Huddle
 
Creating Agile Test Strategies for Larger Enterprises
Creating Agile Test Strategies for Larger EnterprisesCreating Agile Test Strategies for Larger Enterprises
Creating Agile Test Strategies for Larger EnterprisesTEST Huddle
 
Is There A Risk?
Is There A Risk?Is There A Risk?
Is There A Risk?TEST Huddle
 
Are Your Tests Well-Travelled? Thoughts About Test Coverage
Are Your Tests Well-Travelled? Thoughts About Test CoverageAre Your Tests Well-Travelled? Thoughts About Test Coverage
Are Your Tests Well-Travelled? Thoughts About Test CoverageTEST Huddle
 
Growing a Company Test Community: Roles and Paths for Testers
Growing a Company Test Community: Roles and Paths for TestersGrowing a Company Test Community: Roles and Paths for Testers
Growing a Company Test Community: Roles and Paths for TestersTEST Huddle
 
Do we need testers on agile teams?
Do we need testers on agile teams?Do we need testers on agile teams?
Do we need testers on agile teams?TEST Huddle
 
How to use selenium successfully
How to use selenium successfullyHow to use selenium successfully
How to use selenium successfullyTEST Huddle
 
Testers & Teams on the Agile Fluency™ Journey
Testers & Teams on the Agile Fluency™ Journey Testers & Teams on the Agile Fluency™ Journey
Testers & Teams on the Agile Fluency™ Journey TEST Huddle
 
Practical Test Strategy Using Heuristics
Practical Test Strategy Using HeuristicsPractical Test Strategy Using Heuristics
Practical Test Strategy Using HeuristicsTEST Huddle
 
Thinking Through Your Role
Thinking Through Your RoleThinking Through Your Role
Thinking Through Your RoleTEST Huddle
 
Using Selenium 3 0
Using Selenium 3 0Using Selenium 3 0
Using Selenium 3 0TEST Huddle
 

More from TEST Huddle (20)

Why We Need Diversity in Testing- Accenture
Why We Need Diversity in Testing- AccentureWhy We Need Diversity in Testing- Accenture
Why We Need Diversity in Testing- Accenture
 
Keys to continuous testing for faster delivery euro star webinar
Keys to continuous testing for faster delivery euro star webinar Keys to continuous testing for faster delivery euro star webinar
Keys to continuous testing for faster delivery euro star webinar
 
Why you Shouldnt Automated But You Will Anyway
Why you Shouldnt Automated But You Will Anyway Why you Shouldnt Automated But You Will Anyway
Why you Shouldnt Automated But You Will Anyway
 
Being a Tester in Scrum
Being a Tester in ScrumBeing a Tester in Scrum
Being a Tester in Scrum
 
Leveraging Visual Testing with Your Functional Tests
Leveraging Visual Testing with Your Functional TestsLeveraging Visual Testing with Your Functional Tests
Leveraging Visual Testing with Your Functional Tests
 
Using Test Trees to get an Overview of Test Work
Using Test Trees to get an Overview of Test WorkUsing Test Trees to get an Overview of Test Work
Using Test Trees to get an Overview of Test Work
 
Big Data: The Magic to Attain New Heights
Big Data:  The Magic to Attain New HeightsBig Data:  The Magic to Attain New Heights
Big Data: The Magic to Attain New Heights
 
Will Robots Replace Testers?
Will Robots Replace Testers?Will Robots Replace Testers?
Will Robots Replace Testers?
 
TDD For The Rest Of Us
TDD For The Rest Of UsTDD For The Rest Of Us
TDD For The Rest Of Us
 
Scaling Agile with LeSS (Large Scale Scrum)
Scaling Agile with LeSS (Large Scale Scrum)Scaling Agile with LeSS (Large Scale Scrum)
Scaling Agile with LeSS (Large Scale Scrum)
 
Creating Agile Test Strategies for Larger Enterprises
Creating Agile Test Strategies for Larger EnterprisesCreating Agile Test Strategies for Larger Enterprises
Creating Agile Test Strategies for Larger Enterprises
 
Is There A Risk?
Is There A Risk?Is There A Risk?
Is There A Risk?
 
Are Your Tests Well-Travelled? Thoughts About Test Coverage
Are Your Tests Well-Travelled? Thoughts About Test CoverageAre Your Tests Well-Travelled? Thoughts About Test Coverage
Are Your Tests Well-Travelled? Thoughts About Test Coverage
 
Growing a Company Test Community: Roles and Paths for Testers
Growing a Company Test Community: Roles and Paths for TestersGrowing a Company Test Community: Roles and Paths for Testers
Growing a Company Test Community: Roles and Paths for Testers
 
Do we need testers on agile teams?
Do we need testers on agile teams?Do we need testers on agile teams?
Do we need testers on agile teams?
 
How to use selenium successfully
How to use selenium successfullyHow to use selenium successfully
How to use selenium successfully
 
Testers & Teams on the Agile Fluency™ Journey
Testers & Teams on the Agile Fluency™ Journey Testers & Teams on the Agile Fluency™ Journey
Testers & Teams on the Agile Fluency™ Journey
 
Practical Test Strategy Using Heuristics
Practical Test Strategy Using HeuristicsPractical Test Strategy Using Heuristics
Practical Test Strategy Using Heuristics
 
Thinking Through Your Role
Thinking Through Your RoleThinking Through Your Role
Thinking Through Your Role
 
Using Selenium 3 0
Using Selenium 3 0Using Selenium 3 0
Using Selenium 3 0
 

Recently uploaded

Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 

Recently uploaded (20)

Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 

John Kent - An Entity Model for Software Testing

  • 1. An Entity Model of Software Testing: A Foundation for the Future John Kent: john.kent@simplytesting.com
  • 2. An Entity Model of Software Testing: A Foundation for the Future
  • 3. • Discussions at the Test Retreat • A work in progress • Building Test Management Tools • A Test Entity Model could be used for: – Software Testing – All types of systems testing
  • 4. The Need for an Entity Model • Define the language • The Software Testing Cannon – Myers, etc... – IEEE 829 – BSI 7925 – ISEB – ISTQB • For test tools to be built which implement a real model of testing • How can we train testers without a clear picture of testing? • Future standards, text books and test tools should be based upon an agreed entity model
  • 5. • Entity Relationship Diagram - ER Diagram – Entities • Uses rectangle – Relationships between entities • Uses ellipse symbol • Many shown as – Entities have Attributes Entity Relationship Modeling Singer Song Performs Song
  • 6. Sources • Standards – BSI 7925 – IEEE 829 • Training Courses – ISEB – ISTQB • Glossary • Syllabus • Experience • Test Retreat discussions • Discussions with testers
  • 7. Where We Are Now • In many organisations tests look like this: – Test Script • Test Steps – Input – Expected Output Inputs Expected Outcomes
  • 8. IEEE 829 Entity Relationship Diagram • No System Specifications • No Test Conditions • Relationships ill-defined
  • 9. • Tries to describe all possible relationships – not just one way of doing things • We will build the model by: 1. Using a possible relationship example then… 2. Make statements about the relationships
  • 10. The Entities • Test Entities include: – Specifications – Test Conditions – Test Cases – Test Scripts – Test Steps – Test Execution Schedule – Test Results • Not included here – Defects – Test Plans – Test Strategies – Test Coverage Items
  • 11. Entity: Specification Item • An indivisible, testable part of a specification • Also called Test Basis • Requirement Specification – User Reqt – Legal Reqt – Performance Reqt – Security Reqt – etc... • Design/Functional Specification • Attributes – Description – Risk – Priority – …
  • 12. Entity: Test Condition • Definition – ISTQB definition • "An item or event of a component or system that could be verified by one or more test cases, e.g. a function, transaction, feature, quality attribute, or structural element." – 7925 definition – not defined – Attributes • Description • Risk • Priority • A statement of required system behavior under certain conditions • A refinement of the specification (from a test perspective) • Could be considered to be a specification item
  • 13. Entity: Test Case • Definition – ISTQB: “A set of input values, execution preconditions, expected results and execution postconditions, developed for a particular objective or test condition, such as to exercise a particular program path or to verify compliance with a specific requirement. [After IEEE 610]” – 7925: “A document providing detailed instructions for the execution of one or more test cases” – Attributes • Described by IEEE 829 • Input • Expected Output • Preconditions • Objective – Re-use?
  • 14. Entity: Test Script • Definition – Also called Test Procedure – ISTQB: Test Procedure – “A document specifying a sequence of actions for the execution of a test. Also known as test script or manual test script. [After IEEE 829]” • Consists of Test Steps…. • A sequence of test cases?
  • 15. Entity: Test Step • Definition – ISTQB: not defined – 7925: not defined • But they do exist – I’ve seen them!
  • 16. Entity: Test Execution Schedule • Tests run sequence • ISTQB: “A scheme for the execution of test procedures. The test procedures are included in the test execution schedule in their context and in the order in which they are to be executed”.
  • 17. Entity: Test Result • ISTQB: Result: – “The consequence/outcome of the execution of a test. It includes outputs to screens, changes to data, reports, and communication messages sent out.”. • 7925: Actual Outcome: – “The behavior actually produced when the object is tested under specified conditions”.
  • 18. Relationship: Specifications to Test Conditions Example – an Asset Management System Spec: Assets Spec: Add Assets Spec: Delete Assets TCond: Test that cannot delete an Asset when used in an active work order TCond: Test that cannot delete an Asset when used in an active job planA Specification can ‘link’ to many Test Conditions TCond: Test that can delete an Asset when used in an inactive work order TCond: Test that can delete an Asset when not used in a job plan or work order TCond: Test that can delete an Asset when used in an inactive job plan Together the Specifications and Test Conditions can make up a model of the system under test
  • 19. Relationship: Specifications to Test Conditions(Cont) Req Spec: Assets Req Spec: Add Assets Req Spec: Delete Assets TCond: Test that cannot delete an Asset when used in an active work order TCond: Test that cannot delete an Asset when used in an active job plan TCond: Test that can delete an Asset when used in an inactive job plan TCond: Test that can delete an Asset when used in an inactive work order TCond: Test that can delete an Asset when not used in a job plan or work order Design Spec: Assets Design Spec: Delete Asset Menu item A Test condition could link to many specifications
  • 20. Relationship: Test Conditions to Test Cases TCond: Test that can delete an Asset when not used in an active job plan or work order TCase: Pre-condition: An asset linked to an inactive Job Plan Input: Select ‘Delete Asset’ menu item Expected Outcome: Asset removed from list TCond: Test that can delete an Asset when used in an inactive job plan TCond: Test that Asset is removed from the asset list when deleted The Objective (IEEE 829) attribute in this definition of a Test Case is the linked test conditions A Test Case can link to many Test Conditions
  • 21. Relationship: Test Conditions to Test Cases(cont) TCase: Pre-condition: An asset linked to an inactive Job Plan Input: Select ‘Delete Asset’ menu item Expected Outcome: Asset removed from list TCond: Test that Asset is removed from the asset list when deleted TCase: Pre-condition: An asset linked to an inactive Work Order Input: Select ‘Delete Asset’ menu item Expected Outcome: Asset removed from list TCase: Pre-condition: An asset not linked to a Work Order or Job Plan Input: Select ‘Delete Asset’ menu item Expected Outcome: Asset removed from list A Test Condition can link to many Test Cases
  • 22. Relationship: Test Cases to Test Scripts A Test Script can consist of many Test Cases A Test Case may appear in many Test Scripts Test Script 2: Test Script 1: Test Step: 3 Test Case: 2 Test Case: 1 Test Step: 9 Test Case: 2 Test Case: 7 Test Case: 2 This is test case re-use
  • 23. Test Script 1: Asset Tests Relationship: Test Scripts to Test Steps Test Step: 3 Pre-condition: An asset linked to inactive JobP Input: Select ‘Delete Asset’ menu item Expected Outcome: Asset removed from list Test Step: 2 Pre-condition: An active job plan Input: Select ‘Inactivate Asset’ Menu item Expected Outcome: Asset status=Inactive Test Step: 1 Select an job plan with Status= Active An Asset linked A Test Step is a Test Case in a Test Script
  • 24. Test Script 2: Test Script 1: Relationship: Test Steps to Test Execution Schedules Test Step: 3 Test Step: 2 Test Step: 1 Test Step: 3 Test Step: 2 Test Step: 1 Test Execution Schedule 1 Script 1 - Test Step 1 Script 2 - Test Step: 2 Script 1 - Test Step: 2 Test Execution Schedule 2 Script 1 - Test Step 2 Script 2 - Test Step: 2 Script 1 - Test Step: 3 A Test Execution Schedule can contain many Test Steps A Test Step can be used in many Test Execution Schedules
  • 25. Test Script2: Test Script1: Test Execution Schedule 1 Test Script 1 Test Script 8 Test Script 7 Test Execution Schedule 2 Test Script 2 Test Script 7 Test Script 1 A Test Execution Schedule can contain many entire Test Scripts An entire Test Script can be used in many Test Execution Schedules Relationship: Test Scripts to Test Execution Schedules
  • 26. Relationship: Test Execution Schedules to Test Results Test Execution Schedule Script 1 - Test Step 1 Script 2 - Test Step: 2 Script 1 - Test Step: 2 Test Results: Run 1 Test Results: Run 2 Test Results: Run 3 A Test Execution Schedule can appear in many Test Results
  • 27. The ‘Full’ Test Entity Model Specification Item Test Condition Test Case Test Script Test Step Test Execution Schedule Test Results
  • 28. The ‘Full’ Test Entity Model Specification Item Test Condition Test Case Test Script Test Step Test Execution Schedule Test Results Test Execution Results must be traceable back through all of the relationships to the specifications or requirements
  • 29. The major difference between the Theory and Real World is the Real World contains time and therefore work we do is incomplete • It takes time to build the entities • It takes time to build the relationships between entities • What test entities we build depend on the time we have • The level of detail in specifications and tests is dependent upon time – Requirements are incomplete – Test conditions are also incomplete
  • 30. Real World Waterfall Model Code what you can from specs and make up the rest. Bugs always included Specify the Syst Design incompletely with errors Produce Requirements which are incomplete and slightly wrong There is an over-emphasis on test scripts because it is generally accepted that testers write scripts. Often we could get greater test coverage by producing more test conditions which we could execute directly and not waste time on scripting. Because Requirements are incomplete we need Test Conditions to describe the system – we produce a list of incomplete Test Conditions
  • 31. Additions to the ‘Full’ Test Entity Model Specification Item Test Condition Test Case Test Script Test Step Test Execution Schedule Test Results We could get greater test coverage by producing more test conditions which we could execute directly. Writing TCs gives faster test coverage We have seen that TCs are a form of spec so it would be possible to execute the specifications directly in some test projects
  • 32. Simplified Test Entity Model 1 Specification Item Test Condition Test Execution Schedule Test Results Test conditions executed directly using testers knowledge to provide missing steps
  • 33. Simplified Test Entity Model 2 Test Script Test Step Specification Item Test Condition Test Execution Schedule Test Results Entity Model used in Quality Center and Test Director Many test teams don’t use this bit Introduces another addition to the ‘Full’ Model: TCond to Test Script So they cannot measure test coverage against requirements May be difficult to implement full model in a database tool – lots of many to many relationships
  • 34. Simplified Test Entity Model 3 Test Script Test Step Test Execution Schedule Test Results Specification Item Test Condition This is where many test organisations are They may be better off doing this
  • 36. Summary • Full Entity Model Not Completely Defined – Entities not well defined – Relationships not well defined – Attributes not defined – Risk? – Entities left out, Test Coverage, Test Plan • Once we understand the full entity model we may be able to see more/better ways to test • In the real world we are likely to use a simplified version of the Entity Model

Editor's Notes

  1. I worked on T-Plan so I ‘m interested in how to represent testing in a database structure Started discussion at retreat Met with derision and some hostility. Eventually people realise that an entity model had not been defined and was fundamental to our understanding of testing This is a hypothesis at the moment – it needs further discussion amongst practitioners The relationships are not fully defined
  2. All possible relationships between entities – from literature, experience, discussions, test management tools Again this is a work in progress – all opinions are of interest
  3. Test Execution Result A result for a specific test case in an execution
  4. Hierarchy of specifications The spec Delete assets needs to be refined as information about assets is missing Get 3 Test Conditions to refine the behaviour of the system Can split the last test condition into three more Test Conditions: – test that can delete an asset which is used in an inactive Work Order – test that can delete an asset which is used in an inactive job plan – test that can delete an asset which is not used in a job plan or work order
  5. The spec Delete assets needs to be refined as information about assets is missing Get 3 Test Conditions to refine the behaviour of the system Can split the last test condition into three more Test Conditions: – test that can delete an asset which is used in an inactive Work Order – test that can delete an asset which is used in an inactive job plan – test that can delete an asset which is not used in a job plan or work order
  6. The spec Delete assets needs to be refined as information about assets is missing Get 3 Test Conditions to refine the behaviour of the system
  7. The spec Delete assets needs to be refined as information about assets is missing Get 3 Test Conditions to refine the behaviour of the system
  8. The spec Delete assets needs to be refined as information about assets is missing Get 3 Test Conditions to refine the behaviour of the system
  9. The spec Delete assets needs to be refined as information about assets is missing Get 3 Test Conditions to refine the behaviour of the system
  10. The spec Delete assets needs to be refined as information about assets is missing Get 3 Test Conditions to refine the behaviour of the system
  11. The spec Delete assets needs to be refined as information about assets is missing Get 3 Test Conditions to refine the behaviour of the system
  12. The spec Delete assets needs to be refined as information about assets is missing Get 3 Test Conditions to refine the behaviour of the system
  13. I used this test entity model on a project once
  14. Most people don’t