Idea Flow
Models
Idea Flow
  • Welcome!
    • Why Models?
    • Why Principles?
  • Agility & Transformations
    • Intro to Agile
      • What Does Agile Mean?
      • What Is An Agile Mindset?
    • Intro to Transformation
      • Why Transform?
      • How Is The Transformation Done?
      • Who Transforms?
      • Which Areas or Functions Transform?
      • How Long Does A Transformation Take?
  • Agile Transformation (Idea Model)
    • Intro to IDEA
      • Leadership-Strip (Tanzaku)
      • Managing The Change
      • Metrics
      • Coaching Plan
        • Coaching Assessment
    • Initial Exposure
      • Training & Coaching
      • Assessment
    • Develop Basics
      • Training & Coaching
      • Assessment
    • Evolve & Reflect
      • Training & Coaching
      • Assessment
    • Accelerate & Kaizen
      • Training & Coaching
      • Assessment
  • Delivery Approach (Flow Model)
    • Intro to Flow
      • Flow of Work
      • Dev Sec Ops
    • Conceptualise
      • Purpose
      • Inputs
      • Process
      • Outputs
    • Commence
      • Purpose
      • Inputs
      • Process
      • Outputs
    • Construct
      • Purpose
      • Inputs
      • Process
      • Outputs
    • Confirm
      • Purpose
      • Inputs
      • Process
      • Outputs
    • Complete
      • Process
      • Outputs
    • Check
      • Process
  • Scrum, Kanban & Other Agile Frameworks
    • Double-Loop Scrum
    • Kanban
  • 3D Work-Breakdown
    • Intro to Work Breakdown
    • Direction
    • Discovery
    • Delivery
    • Flow & 3D Work-Breakdown
  • Roles & Responsibilities
    • Overview
      • Trust Circles
      • Enterprise View
    • Core Team Roles
      • Scrum Master / Iteration Manager
      • Product Owner
      • Developer
      • Tester
      • Business Analyst
      • Infrastructure
    • Extended Team Roles
      • Product Manager
      • Test Lead
      • Tech Lead
      • Subject Matter Expert (SME)
      • UX/UI Designer
      • Infrastructure Lead
      • Project Manager
      • Solution Architect
      • Delivery Manager
      • Change Analyst
    • Trusted Advisor Roles
      • Project Sponsor
      • Stakeholders
  • Topics
    • Prioritisation
    • Estimation
      • Estimation Overview
      • Epic Estimation
      • Initiative Estimation
    • Planning
      • Sprint / Iteration Planning
      • Release Planning
      • Quarterly Planning
      • Problem Statement
    • Ceremonies
      • Showcase
      • Scrum of Scrums
      • Stand-up
      • Retrospective
      • Elicitation
      • Elaboration
      • Acceptance Criteria (AC)
    • Artefacts
      • Tech Spike
      • Definition of Done
      • Social Contract
      • Personas
      • Lean Canvas
      • User Stories
    • Toolkit
      • Success Sliders
      • ICaRuS Scoring
      • Accountability Cards
    • Quality
      • Test Strategy
      • Test Plan
      • Quality Attribute Definitions
      • Test Type Definitions
      • Regression Test Suite Definitions
      • Defect Definitions
      • Defect Severity
      • Defect Priority
      • Agile Testing Quadrants
      • Risk-Based Testing
    • Templates
      • 3rd Party Handover Template
      • Audit Logs
    • Data
      • Information Management
    • Kanban
  • Agile Testing (4Aces Model)
    • Intro to Agile Testing
      • Test Principles
        • Test Automation Principles
      • Test Artefacts
      • Test Triangle
      • Agile Testing Quadrant
    • Arrange
    • Act
    • Assert
    • Annihilate
  • INCIDENT MANAGEMENT (TRACeR MODEL)
    • Intro to TRACeR
      • What is Incident Management
      • Incident Management Workflow
    • Triage
    • Review
    • Action
    • Check
    • Resolve
  • Change Management (3C Change Model)
    • Intro to 3C Change
      • What is Change?
      • What is Change Management?
      • 7Rs of Change Management
      • Model States
      • Implementation
    • Capture
      • Priority
      • Experience
      • Impact
      • Change Types
    • Consider
      • Risk
    • Conduct
      • Plan
        • Change Activities Matrix
      • Perform
        • Rollback or Roll-forward
      • Prove
        • Change Result/Status
  • Faciliation
    • Intro to Faciliation
      • Agile Facilitation
      • Planning and Running a Workshop
    • Meetings
      • Meeting Prep
    • Workshops
      • Quarterly Planning Workshop
      • Integrated Culture Workshop
    • Games
      • Dice Game
      • Battleships
      • Kanban Pizza Game
    • Icebreakers
      • Check Your Personal Thinking Style
  • Agile Coaching (A6 Model)
    • Intro to Coaching
    • Agree
    • Address
    • Assess
    • Align
    • Assign
    • Account
  • Agile Leadership
    • Intro to Agile Leadership
  • Strategy
    • What is Strategy?
    • What is Vision?
    • What is a Mission?
    • What are Values and Drivers?
    • Intent-based Outcomes
    • MunroMaps
  • OKRA
    • OKRS + ACTIONS = OKRA
      • Implementation
      • Cycle Cadence
    • Objectives
      • OKRs
    • Key Results
    • Actions
  • Agile Software Architecture (C4 Model)
    • Intro to Architecture
      • Role of the Architect
      • SOLID Principles
      • DRY Principle
      • Single Source of Truth (SSOT)
    • Context
      • Examples
    • Container
      • Examples
    • Component
      • Examples
    • Code
      • Examples
    • Patterns
      • Back-end for Front-end (BFF)
      • Event-Driven Microservices
  • Portfolio Management (PMO Practice Model)
    • Intro to Portfolio Management
      • Practices & Flow
      • Objectives
      • Types
      • Maturity Assessment
      • Setting Up
        • Charter
    • Demand Practice
    • Risk Practice
    • Performance Practice
      • Cost of Delay (CoD)
      • Metrics
    • Report Practice
    • Delivery Practice
    • Asset Practice
    • Change Practice
  • RAFT
    • RAFT Framework
  • Tools
    • Jira
      • Best Practice
      • Printing Physical Cards
    • Confluence
      • Best Practice
      • Example Confluence Layout
    • Power BI
      • Power Query M
    • Miro
      • Best Practice
  • FAQs
    • Frequently Asked Questions
    • Glossary of Terms
  • Thanks & Contributors
    • Thanks
    • License
Powered by GitBook
On this page

Was this helpful?

  1. Agile Testing (4Aces Model)
  2. Intro to Agile Testing
  3. Test Principles

Test Automation Principles

Last updated 7 months ago

Was this helpful?

The following Test Automation principles have been designed to be in line with industry best practices.

Principle
Description

Tests should be expressive

It should be transparent what is being tested by an automated test. Let's leave the guesswork out of this and make the tests expressive and transparent. This helps other Technical Testers, Functional Tests, Developers and stakeholders.

Tests should be independent

Tests should not depend on other tests for the state. Tightly coupled tests erode the value of building and running the tests as a continuous regression safety net due to intermittency issues caused by tests having to run in a certain sequence. Ideally, a test should also be responsible for its own (test) data. Meaning it prepares the test data required and cleans it up again.

Tests should be fast

Only when automated tests run fast, we can run them at any stage and as often as necessary or required. The aim here is to allow for fast feedback. Having to wait hours for automated tests to complete, defeats the purpose. This also means keeping long running e2e tests to a minimum.

Tests should be repeatable

With no changes to a system under test, automated tests should produce the same results consistently. Tests that are not repeatable, or unstable, do not provide a lot of confidence.

Tests should be maintainable

Software products change and so will automated tests. Only a test that is easy to read and understand is easy to maintain. Simplicity is key. See

Tests should be easy to run

If tests are hard to run, we discourage others to utilise them. Goal is to have tests that can be run anywhere at any time. Tests that are easy to run will allow for simpler pipelines as well.

Keep the lights on

Keep the tests maintained and efficient. This also applies to the framework itself by reducing tech debt and keeping it and its dependencies up to date. Having healthy pipelines is part of this as well. Pipelines that look like a Christmas tree (red / green) don't build confidence.

Don't repeat yourself

This principle can be applied to two areas - code and tests. Don't duplicate code to keep it easier to read and maintain, and don't duplicate test coverage. Something that has been verified by one test, doesn't need to be tested again.

No shortcuts

Manual testing is no shortcut if automated tests are broken or don't work. Invest the time to keep the test maintained and healthy. Also, don't run the tests locally if there are (and there should be) pipelines for those tests. If the pipelines take too long to complete, look at optimising them.

KISS Principle