Testing the Pyramid with Toggles

25-minute New Voice Talk

Implement a CI/CD pipeline using toggles that passes all levels of the Test Pyramid, certifying that each committed change is compatible with production and also validates new functionality.

Timetable

11:45 a.m. – 12:30 p.m. Wednesday 17th

Room

Room F1 - Track 1: Talks

Audience

Developer, Tester, DevOps Engineer

Key-Learning

  • One step more for Continuous Deployment.
  • Connect the actors: toggle activation, feature status-flow and pipeline.
  • Tests affected by toggled features will have to implement 2 versions: toggle OFF (current) & ON (adapted test).

Using toggles in Tests

You are trying to adopt DevOps by applying trunk-based development (one main branch, committing changes periodically) and a pipeline that certifies each change (automated testing).

Toggles enable you to keep everything running, removing impact of failing or unfinished features. Toggles detach deploy (toggle OFF) from release (ON). Therefore, your pipeline must be able to manage both situations.

You don’t work with a single toggle, but a combination of them. Set of toggles involved is out of your control, it depends on development speed, changes in priorities, dependencies with other features, etc.

In this talk we are going to see an approach to implement a CI/CD pipeline built over the Test Pyramid, based in a two-step certification process: production (same toggle setup than production) and staging (enabling new features finished and not released in production) that adapts dynamically to changes on toggles configuration.

In other words, we are going to propose a pipeline that certifies that any change can be deployed and released (if the feature is finished) in the production environment.

Related Sessions

11:45 a.m. – 12:30 p.m.
Room F1 - Track 1: Talks

25-minute Talk

2:45 p.m. – 3:30 p.m.
Room F3 - Track 3: Talks

25-minute Talk

9:00 a.m. – 5:00 p.m.

Full-Day Tutorial (6 hours)

9:00 a.m. – 5:00 p.m.

Full-Day Tutorial (6 hours)