23

Create your own testing strategy to move towards Continuous Delivery

  • Upload
    addq

  • View
    266

  • Download
    2

Embed Size (px)

Citation preview

THEORY OF COMPLEXITY

Anna AlménMail: [email protected]

Mob: 076-1139309

• Adaptive• Self-organized• Co-operation between agents• Interaction form patterns• Emerge• Non-linear • Fragile/Antifragile

COMPLEX SYSTEMS

“the scientific study of control and

communication in the animal and

the machine”

CYBERNETIC CONTROL

Cohns - Test PyramidUATWorkflows

Component IntegrationBusiness RulesAPI Service Layer

Unit Level / Component Tests

Test Cadence

Continuous builds with unit tests

Continuous functional tests

Code branch

Commit Pass

Project continues

Release Build

Release package

Continuous builds with unit tests

Continuous functional tests

Continuous performance tests

Code branch

Fail

Nightly Builds/TestsYearly Release CyclesMainly Q2 TestsTDD was announced be implementedServices performed manual regression testNo Performace TestMonolith (approx 4 millions lines of code)Full suite of tests approx 1 weekDependency on External Test Environments

Ice Cone Pattern

?Automated Robot Tests

Too busy to start?

131.1 Continuous Builds (OODA Loop)

Decide

ActObserve

Orient

Continuous Integration

Version Control, code, scripts, …

Automated Build

Agreement from team

Degree of disipline

15

4.1 Guarded commit.

16

4.2 Delivery Pipeline

17

What is Continuous Delivery?• Configuration Management• Version Control• Managing Dependencies• Committing and Building• Test Strategy

Push a Button Release

19

2.3 Code Coverage

203.3 Business Tests non Trivial Changes

21

3.7 Code Review

• Keep it simple!• Make it incremental and celebrate success• Set a cadency and grow from there• Take care of the infrastructure• Use Cybernetic Control

Summary