SlideShare a Scribd company logo
© Curiosity Software Ireland Ltd. 2023
Modelling for Continuous
Testing
February 28th 2023
Ben Riley
CIO, Curiosity
Ben.Riley@Curiosity.Software
@CuriositySoft
Rich Jordan
Enterprise Solutions Architect, Curiosity
Rich.Jordan@Curiosity.Software
@RichJordan81
© Curiosity Software 2023
You have a DevOps Transformation, but your Test
approach hasn’t really changed
• You have a large team of testers doing mainly e2e tests (even if they call it something else).
• You have a test pack largely made up of UI based e2e tests which always grows after each release – you suspect
there’s lots of duplicated effort in there.
• Testing is delayed because you are waiting on large, complicated e2e environments to be built, or waiting for your
slot in the few e2e environments that persist in your organization.
• Test coverage relies on traceability back to requirements that you know are incomplete or out of date.
• Test design is largely an activity that involves testers creating test cases without input from the wider development
team. Alternatively, you don’t design test at all; you just write test cases/automation.
• A large % of your defects are environment/config related, causing large delays in test phases.
• You are finding fundamental design issues in late, large, slow e2e test phases.
• Despite trying many different tools, you are struggling to increase the rate of tests executed through automation as
the tests are just too flaky!
Original Image:
Khanargy, Wikimedia
Commons, published
under CC BY-SA 4.0
license.
© Curiosity Software 2023
Your Test approach and the Testing
Pyramid
• Traditional UI testing is too slow
• Doesn’t lend itself to stable,
repeatable automation at scale
• Quickly requires lots of real e2e
environments
• Doesn’t get to the real route
cause of problems
© Curiosity Software 2023
DevOps: what are the 3 ways of
DevOps Principle
The First Way: Flow/Systems Thinking.
The Second Way: Amplify Feedback Loops.
The Third Way: Culture of Continual Experimentation and
Learning.
The Three Ways: The Principles Underpinning DevOps
by Gene Kim / IT Revolution
https://itrevolution.com/articles/the-three-ways-principles-
underpinning-devops/
Original Image: Khanargy, Wikimedia Commons,
published under CC BY-SA 4.0 license.
© Curiosity Software 2023
Flow
• Never passing a known defect to downstream work centers
• Never allowing local optimization to create global degradation
• Always seeking to increase flow
• Always seeking to achieve profound understanding of the system
What do testers actually spend their time doing?
Typical Test team effort
Comprehension of system /
change
30%
(Automation) Test script
creation/maintenance
20%
Test execution 20%
Waiting to test 5%
Evidencing / Reporting 10%
Other (Meetings / Self-
Development)
15%
100%
Sample represents 50 testers
Software entropy is the idea
that software eventually rots as it is
changed if sufficient care is not taken to
maintain coherence with product design
and established design principles.
Managing Software entropy
1.Improve the communication in your team.
2.Maintain coherence with product design
and established design principles
© Curiosity Software 2023
Flow
• Never passing a known defect to downstream work centers
• Never allowing local optimization to create global degradation
• Always seeking to increase flow
• Always seeking to achieve profound understanding of the system
Diagram adapted from John Ferguson Smart’s “BDD
at the heart of any DevOps Transformation”
3) We relentlessly automate
testing and checking of the
models in test execution!
If we don’t know the
outcomes, we find out
through the process of
building the models…
we ask critical
questions and do
critical thinking
1), 2) We build a common understanding of the
stack and how its changing through collaborative
teams, building models with engineered,
predictable & repeatable outcomes!
4) We execute all checks as
part of the standard CI/CD
process!
4a) We are driven by the metric
we gather to provide quality and
lean improvements wherever they
exist
5) We play an active role in
promoting best practices and
celebrating continual
improvements
Illustrate
Formulae
Automate
Validate
Demonstrate
Feedback
Visibility
Valuable Software
Testers
Business Rules
Examples
A Shared Understanding
Executable Specifications,
Wireframes…
Automated Acceptance Tests
Living Documentation
1
2
3
4
5
BA
Business
Developers
© Curiosity Software 2023
Amplify Feedback Loops • Shortening and amplifying all feedback loops
• Embedding knowledge where we need it.
• Shifting Test left in engaging design – robust test design of rules and flows – we build models
• Quick to build, stable and quick to run automated tests
• Fail fast and fail early – once built, API test runs in line with DevOps cadence for delivery
orchestrated inline with build deployment
• Iterative building block approach enables Continuous Integration delivery
Manual Tests
Integration Tests
Unit Tests
E2E Tests
(UI Testing)
What the automation pyramid
says good looks like
UI / UX / Look and Feel /GUI
Infrastructure
Device Client / Functionality / API
Interface / SOA Rules / Services
System of Record / ETL Data Transition Rules /
Batch Services Comparison Rules Engines
E2E
Acceptance
UI Channel
Change
Going Beyond The Test Pyramid
(everything is a model)
App / Client Functional
Change / Contracts
Platform /
Infra Build
Interface Change /
Contracts
ETL Validation / Big
Data
Stubs mapped against understood coverage and version-
controlled interface spec
Stubs mapped against understood coverage and version-
controlled interface spec
© Curiosity Software 2023
Shortening and amplifying feedback loops –
modelling for isolation
1) Reinforcing / proving the external boundaries
2) Reinforcing / proving the internal boundaries
3) Proving the systems elements in isolation
4) Proving batch / reporting
5) Proving the golden thread of the platform
6) Stakeholder demonstration
The more this last stage deemed to be testing,
the more monolithic the platform and change
will become
© Curiosity Software 2023
Culture of Continual Experimentation
and Learning. • Continual experimentation
• Taking risks and learning from failure
• Understanding that repetition and practice is the prerequisite to mastery
Models help us to understand our systems & change impact
Refactor and optimize based on isolated risk
Minimized the blast radius (the impact of failure)
Demo
© Curiosity Software Ireland Ltd. 2023
© Curiosity Software 2023
Flow
• Never passing a known defect to downstream work centers
• Never allowing local optimization to create global degradation
• Always seeking to increase flow
• Always seeking to achieve profound understanding of the system
Diagram adapted from John Ferguson Smart’s “BDD
at the heart of any DevOps Transformation”
3) We relentlessly automate
testing and checking of the
models in test execution!
If we don’t know the
outcomes, we find out
through the process of
building the models…
we ask critical
questions and do
critical thinking
1), 2) We build a common understanding of the
stack and how its changing through collaborative
teams, building models with engineered,
predictable & repeatable outcomes!
4) We execute all checks as
part of the standard CI/CD
process!
4a) We are driven by the metric
we gather to provide quality and
lean improvements wherever they
exist
5) We play an active role in
promoting best practices and
celebrating continual
improvements
Illustrate
Formulae
Automate
Validate
Demonstrate
Feedback
Visibility
Valuable Software
BA Testers
Business
Developers
Business Rules
Examples
A Shared Understanding
Executable Specifications,
Wireframes…
Automated Acceptance Tests
Living Documentation
1
2
3
4
5
© Curiosity Software Ireland Ltd. 2023
Questions and Discussion
© Curiosity Software 2023
Carry on the conversation?
• Book a demo and discussion with a Curiosity expert!
• Try Test Modeller. Visit Testmodeller.io for a free trial and online tutorials.
• Follow Curiosity Software on LinkedIn and @CuriositySoft on Twitter for
resources and news.
• Connect with Ben and Rich on LinkedIn.
© Curiosity Software Ireland Ltd. 2023
Thank you
Ben.Riley@Curiosity.Software
Rich.Jordan@Curiosity.Software

More Related Content

PDF
5 Steps to Jump Start Your Test Automation
PDF
Solving the 3 Biggest Questions in Continuous Testing
PPTX
devops is development and operations in cloud computing
PPTX
DevOps Overview in my own words
PPTX
Enterprise DevOps: Scaling Build, Deploy, Test, Release
PPTX
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
PPTX
Agile & DevOps - It's all about project success
PPTX
Puppet Labs EMC DevOps Day NYC Aug-2015
5 Steps to Jump Start Your Test Automation
Solving the 3 Biggest Questions in Continuous Testing
devops is development and operations in cloud computing
DevOps Overview in my own words
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
Agile & DevOps - It's all about project success
Puppet Labs EMC DevOps Day NYC Aug-2015

Similar to Curiosity Software Presents: Modelling for Continuous Testing (20)

PPTX
How to Build High-Performing IT Teams - Including New Data on IT Performance ...
PPTX
The Evolution of Test Automation for DevOps
PPTX
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
PPTX
All you need is fast feedback loop, fast feedback loop, fast feedback loop is...
PPTX
DevOps and Build Automation
PPTX
Enabling Continuous Delivery
PPTX
Model-Based Testing for ALM Octane: Better tests, built faster
PDF
Agile testing
PDF
What is Continuous Testing in DevOps - A Definitive Guide.pdf
PPTX
Continuos Delivery
PPTX
Engineering DevOps Right the First Time
PDF
DevOps for beginners
PPTX
How to Fit Performance Testing into a DevOps Environment
PDF
Dev ops concept
PPTX
DevOps for dummies study sharing - part II
PDF
DevOps Roadshow - removing barriers between development and operations
PDF
Automated Testing in DevOps - Enhancing Software Quality and Speed.pdf
PDF
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
PDF
DevOps in Regulated Industries: Speed with Compliance
PDF
DevOps Lifecycle: Definition, Phases and Key Components.pdf
How to Build High-Performing IT Teams - Including New Data on IT Performance ...
The Evolution of Test Automation for DevOps
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
All you need is fast feedback loop, fast feedback loop, fast feedback loop is...
DevOps and Build Automation
Enabling Continuous Delivery
Model-Based Testing for ALM Octane: Better tests, built faster
Agile testing
What is Continuous Testing in DevOps - A Definitive Guide.pdf
Continuos Delivery
Engineering DevOps Right the First Time
DevOps for beginners
How to Fit Performance Testing into a DevOps Environment
Dev ops concept
DevOps for dummies study sharing - part II
DevOps Roadshow - removing barriers between development and operations
Automated Testing in DevOps - Enhancing Software Quality and Speed.pdf
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
DevOps in Regulated Industries: Speed with Compliance
DevOps Lifecycle: Definition, Phases and Key Components.pdf
Ad

More from Curiosity Software Ireland (20)

PPTX
Curiosity Software Presents: Isolating blast radiuses for testing - How to no...
PPTX
Curiosity and fourTheorem present: From Coverage Guesswork to Targeted Test G...
PPTX
Curiosity and Testery Present: Hitting the right test coverage for CI/CD
PPTX
Curiosity and Infuse Consulting Present: Sustainable Test Automation Strategi...
PPTX
Curiosity and Windocks Present - Turn your production systems into test-ready...
PPTX
Curiosity and Sogeti Present - The state of test data in 2022: New challenges...
PPTX
Curiosity and Lemontree present - Test Data Automation: Move from slow and ma...
PPTX
Curiosity Software and RCG Global Services Present - Solving Test Data: the g...
PPTX
Curiosity and EPI-USE Labs present - Testing across SAP and non-SAP systems: ...
PPTX
Curiosity and Sauce Labs present - When to stop testing: 3 dimensions of test...
PPTX
Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
PPTX
Curiosity and SelectorsHub present: Generate Rigorous Automated Tests - and L...
PPTX
Curiosity and Lemontree present - Data Breaks DevOps: Why you need automated ...
PPTX
Curiosity Software, Infuse and Kumoco present: The Democratisation of Testing
PPTX
Development Has Moved On: Test data needs to catch up with containers
PPTX
The Broken Promise of Test Automation: Why are we still hand-cranking tests?
PPTX
In the beginning there was a model: Using requirements models to drive rigoro...
PPTX
Model-Based Testing for Cypress
PPTX
Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...
PPTX
Test data automation: delivering quality data at speed
Curiosity Software Presents: Isolating blast radiuses for testing - How to no...
Curiosity and fourTheorem present: From Coverage Guesswork to Targeted Test G...
Curiosity and Testery Present: Hitting the right test coverage for CI/CD
Curiosity and Infuse Consulting Present: Sustainable Test Automation Strategi...
Curiosity and Windocks Present - Turn your production systems into test-ready...
Curiosity and Sogeti Present - The state of test data in 2022: New challenges...
Curiosity and Lemontree present - Test Data Automation: Move from slow and ma...
Curiosity Software and RCG Global Services Present - Solving Test Data: the g...
Curiosity and EPI-USE Labs present - Testing across SAP and non-SAP systems: ...
Curiosity and Sauce Labs present - When to stop testing: 3 dimensions of test...
Curiosity and Coforge present - Oracle FLEXCUBE: De-risk upgrades and migrati...
Curiosity and SelectorsHub present: Generate Rigorous Automated Tests - and L...
Curiosity and Lemontree present - Data Breaks DevOps: Why you need automated ...
Curiosity Software, Infuse and Kumoco present: The Democratisation of Testing
Development Has Moved On: Test data needs to catch up with containers
The Broken Promise of Test Automation: Why are we still hand-cranking tests?
In the beginning there was a model: Using requirements models to drive rigoro...
Model-Based Testing for Cypress
Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...
Test data automation: delivering quality data at speed
Ad

Recently uploaded (20)

PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
history of c programming in notes for students .pptx
PPT
Introduction Database Management System for Course Database
PPTX
ai tools demonstartion for schools and inter college
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
top salesforce developer skills in 2025.pdf
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
System and Network Administration Chapter 2
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
Computer Software and OS of computer science of grade 11.pptx
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Understanding Forklifts - TECH EHS Solution
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
history of c programming in notes for students .pptx
Introduction Database Management System for Course Database
ai tools demonstartion for schools and inter college
CHAPTER 2 - PM Management and IT Context
Upgrade and Innovation Strategies for SAP ERP Customers
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
2025 Textile ERP Trends: SAP, Odoo & Oracle
top salesforce developer skills in 2025.pdf
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
System and Network Administration Chapter 2
PTS Company Brochure 2025 (1).pdf.......
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Design an Analysis of Algorithms II-SECS-1021-03
Navsoft: AI-Powered Business Solutions & Custom Software Development
Computer Software and OS of computer science of grade 11.pptx

Curiosity Software Presents: Modelling for Continuous Testing

  • 1. © Curiosity Software Ireland Ltd. 2023 Modelling for Continuous Testing February 28th 2023 Ben Riley CIO, Curiosity Ben.Riley@Curiosity.Software @CuriositySoft Rich Jordan Enterprise Solutions Architect, Curiosity Rich.Jordan@Curiosity.Software @RichJordan81
  • 2. © Curiosity Software 2023 You have a DevOps Transformation, but your Test approach hasn’t really changed • You have a large team of testers doing mainly e2e tests (even if they call it something else). • You have a test pack largely made up of UI based e2e tests which always grows after each release – you suspect there’s lots of duplicated effort in there. • Testing is delayed because you are waiting on large, complicated e2e environments to be built, or waiting for your slot in the few e2e environments that persist in your organization. • Test coverage relies on traceability back to requirements that you know are incomplete or out of date. • Test design is largely an activity that involves testers creating test cases without input from the wider development team. Alternatively, you don’t design test at all; you just write test cases/automation. • A large % of your defects are environment/config related, causing large delays in test phases. • You are finding fundamental design issues in late, large, slow e2e test phases. • Despite trying many different tools, you are struggling to increase the rate of tests executed through automation as the tests are just too flaky! Original Image: Khanargy, Wikimedia Commons, published under CC BY-SA 4.0 license.
  • 3. © Curiosity Software 2023 Your Test approach and the Testing Pyramid • Traditional UI testing is too slow • Doesn’t lend itself to stable, repeatable automation at scale • Quickly requires lots of real e2e environments • Doesn’t get to the real route cause of problems
  • 4. © Curiosity Software 2023 DevOps: what are the 3 ways of DevOps Principle The First Way: Flow/Systems Thinking. The Second Way: Amplify Feedback Loops. The Third Way: Culture of Continual Experimentation and Learning. The Three Ways: The Principles Underpinning DevOps by Gene Kim / IT Revolution https://itrevolution.com/articles/the-three-ways-principles- underpinning-devops/ Original Image: Khanargy, Wikimedia Commons, published under CC BY-SA 4.0 license.
  • 5. © Curiosity Software 2023 Flow • Never passing a known defect to downstream work centers • Never allowing local optimization to create global degradation • Always seeking to increase flow • Always seeking to achieve profound understanding of the system What do testers actually spend their time doing? Typical Test team effort Comprehension of system / change 30% (Automation) Test script creation/maintenance 20% Test execution 20% Waiting to test 5% Evidencing / Reporting 10% Other (Meetings / Self- Development) 15% 100% Sample represents 50 testers Software entropy is the idea that software eventually rots as it is changed if sufficient care is not taken to maintain coherence with product design and established design principles. Managing Software entropy 1.Improve the communication in your team. 2.Maintain coherence with product design and established design principles
  • 6. © Curiosity Software 2023 Flow • Never passing a known defect to downstream work centers • Never allowing local optimization to create global degradation • Always seeking to increase flow • Always seeking to achieve profound understanding of the system Diagram adapted from John Ferguson Smart’s “BDD at the heart of any DevOps Transformation” 3) We relentlessly automate testing and checking of the models in test execution! If we don’t know the outcomes, we find out through the process of building the models… we ask critical questions and do critical thinking 1), 2) We build a common understanding of the stack and how its changing through collaborative teams, building models with engineered, predictable & repeatable outcomes! 4) We execute all checks as part of the standard CI/CD process! 4a) We are driven by the metric we gather to provide quality and lean improvements wherever they exist 5) We play an active role in promoting best practices and celebrating continual improvements Illustrate Formulae Automate Validate Demonstrate Feedback Visibility Valuable Software Testers Business Rules Examples A Shared Understanding Executable Specifications, Wireframes… Automated Acceptance Tests Living Documentation 1 2 3 4 5 BA Business Developers
  • 7. © Curiosity Software 2023 Amplify Feedback Loops • Shortening and amplifying all feedback loops • Embedding knowledge where we need it. • Shifting Test left in engaging design – robust test design of rules and flows – we build models • Quick to build, stable and quick to run automated tests • Fail fast and fail early – once built, API test runs in line with DevOps cadence for delivery orchestrated inline with build deployment • Iterative building block approach enables Continuous Integration delivery Manual Tests Integration Tests Unit Tests E2E Tests (UI Testing) What the automation pyramid says good looks like UI / UX / Look and Feel /GUI Infrastructure Device Client / Functionality / API Interface / SOA Rules / Services System of Record / ETL Data Transition Rules / Batch Services Comparison Rules Engines E2E Acceptance UI Channel Change Going Beyond The Test Pyramid (everything is a model) App / Client Functional Change / Contracts Platform / Infra Build Interface Change / Contracts ETL Validation / Big Data Stubs mapped against understood coverage and version- controlled interface spec Stubs mapped against understood coverage and version- controlled interface spec
  • 8. © Curiosity Software 2023 Shortening and amplifying feedback loops – modelling for isolation 1) Reinforcing / proving the external boundaries 2) Reinforcing / proving the internal boundaries 3) Proving the systems elements in isolation 4) Proving batch / reporting 5) Proving the golden thread of the platform 6) Stakeholder demonstration The more this last stage deemed to be testing, the more monolithic the platform and change will become
  • 9. © Curiosity Software 2023 Culture of Continual Experimentation and Learning. • Continual experimentation • Taking risks and learning from failure • Understanding that repetition and practice is the prerequisite to mastery Models help us to understand our systems & change impact Refactor and optimize based on isolated risk Minimized the blast radius (the impact of failure)
  • 10. Demo © Curiosity Software Ireland Ltd. 2023
  • 11. © Curiosity Software 2023 Flow • Never passing a known defect to downstream work centers • Never allowing local optimization to create global degradation • Always seeking to increase flow • Always seeking to achieve profound understanding of the system Diagram adapted from John Ferguson Smart’s “BDD at the heart of any DevOps Transformation” 3) We relentlessly automate testing and checking of the models in test execution! If we don’t know the outcomes, we find out through the process of building the models… we ask critical questions and do critical thinking 1), 2) We build a common understanding of the stack and how its changing through collaborative teams, building models with engineered, predictable & repeatable outcomes! 4) We execute all checks as part of the standard CI/CD process! 4a) We are driven by the metric we gather to provide quality and lean improvements wherever they exist 5) We play an active role in promoting best practices and celebrating continual improvements Illustrate Formulae Automate Validate Demonstrate Feedback Visibility Valuable Software BA Testers Business Developers Business Rules Examples A Shared Understanding Executable Specifications, Wireframes… Automated Acceptance Tests Living Documentation 1 2 3 4 5
  • 12. © Curiosity Software Ireland Ltd. 2023 Questions and Discussion
  • 13. © Curiosity Software 2023 Carry on the conversation? • Book a demo and discussion with a Curiosity expert! • Try Test Modeller. Visit Testmodeller.io for a free trial and online tutorials. • Follow Curiosity Software on LinkedIn and @CuriositySoft on Twitter for resources and news. • Connect with Ben and Rich on LinkedIn.
  • 14. © Curiosity Software Ireland Ltd. 2023 Thank you Ben.Riley@Curiosity.Software Rich.Jordan@Curiosity.Software

Editor's Notes

  • #2: And onto our topic for today, “Modelling for Continuous Testing”. It’s my pleasure to hand over to Rich and Ben, to introduce themselves and get us started today.
  • #12: Test creation remained manual Scripting is too repetitive – even with boilerplate code and page objects Manual test case design cannot overcome system complexity  risky over-testing and wasteful over-testing Test data breaks automation Brittle tests create impossible maintenance Automation becomes a “black box” and silo
  • #13: Thank you Rich and Ben for the fantastic presentation! We’ll now open for questions, so please do get your questions to Rich and Ben in the Q&A box. Why don’t we start with this question: Where do I start We have lots of existing tests. Do we need to throw them away? Does this work against rest assured?
  • #14: Fantastic, thank you everyone for your questions and for joining today! If you’d like to carry on your learning today, there are a range of ways you can do this. All these links will be shared with you in a follow-up email, and we’ll also share the slides. Firstly, if you’d like to talk to us, please book a meeting with a Curiosit expert. If you’d like to get hands on, you can also sign up for a Test Modeller trial, using our range of online tutorials to get started. And please do follow Curiosity on LinkedIn and Twitter to keep up with all the latest updates. You can also find Ben and Rich on LinkedIn, if you’d like to connect with them both there.
  • #15: So, we’re at time – and all I think remains to be said is a huge thank you to everyone who’s joined today, and an even bigger thanks to Ben and Rich for presenting!