Transcript
Page 1: Testen binnen dev ops DTC 2014

DevOpsTesten als ‘Linking pin’ tussen Dev en Ops

Dutch Testing Conference, 9 april 2014

1

Page 2: Testen binnen dev ops DTC 2014

DevOpsWat is het?

Page 3: Testen binnen dev ops DTC 2014

3Wat is DevOps?

Development Quality Assurance

Technical Operations

DevOps

Page 4: Testen binnen dev ops DTC 2014

4DevOps: De werkwijze

Een nauwe(re) samenwerking tussen ontwikkelaars, testers en beheer

Ontwikkeling en beheer is een gezamenlijke inspanning

Kort cyclische ontwikkeling: Continuous Delivery / Continuous Integration

Zo snel mogelijk van Ontwikkelen naar Productie

Geen muren: niet binnen teams, niet tussen teams en management

Veel releases, veel afstemming

Page 5: Testen binnen dev ops DTC 2014

Rollen binnen DevOpsDev, Ops en QA

Page 6: Testen binnen dev ops DTC 2014

6Development

Zoveel mogelijk kleine aanpassingen

Snel naar productie− Geautomatiseerd deployen

− Gebruik van centrale build&deploy server met generieke handelswijze

180

Page 7: Testen binnen dev ops DTC 2014

7Operations

Betrokken bij ontwikkeling en test

Betrekt rest van het team bij Operations

STOP

Page 8: Testen binnen dev ops DTC 2014

8Quality Assurance

Snel testen!− Testen begint zo vroeg mogelijk, veel samenspraak met ontwikkelaars

− Lean testen: No risk, no test!

− Geautomatiseerd testen

− Automatische smoketesten op alle test omgevingen én productie!

− Automatische testen bij Deployment (build&deploy server)

Page 9: Testen binnen dev ops DTC 2014

9Quality Assurance

Snel accepteren− Acceptatietesten in nauwe samenspraak met PO

− Geen muren tussen business (PO) en IT

− Acceptatietesten zoveel mogelijk geautomatiseerd

− Performancetesten geautomatiseerd

Page 10: Testen binnen dev ops DTC 2014

10Quality Assurance

Linking pin tussen Development en Ops

DevOpsQA

180

STOP

Page 11: Testen binnen dev ops DTC 2014

11Test Driven Development

Test Driven Development (TDD):− Eerst testen, dan bouwen!

− Testen is een team activiteit

− 100% code coverage

Acceptance Test Driven Development (ATDD):− Acceptatie op basis van testgevallen

− ≈ 100% functionele dekking

Page 12: Testen binnen dev ops DTC 2014

12Test Driven Development

Behaviour Driven Development (BDD):− Gedrag als basis voor ontwerp, bouw en test

− Unit testen naar business value (“Gegeven…”)

− Acceptatie testen als Userstories (“Als [rol] wil ik dat…, zodat [voordeel] ” )

− Acceptatie criteria als scenario’s (“Gegeven dat … Wanneer…., dan….)

Feature: US001. As a User I want to be able to create new appointments within an online agenda

Scenario: TC01. By giving a begin date/time and end date/time a user is able to save an appointment in the agenda

Given that user is logged in on the online application

And user is on the agenda page

When user gives a begin date/time and end date-time

Then an appointment is saved in the agenda.

Page 13: Testen binnen dev ops DTC 2014

13(A)TDD/BDD

(A)TDD of BDD maakt het mogelijk het team te verbinden− Samen verantwoordelijk voor test

− Test als basis voor het gehele traject

DevOpsQA

180

STOP

Page 14: Testen binnen dev ops DTC 2014

DevOps: De PraktijkVoordelen, nadelen, leerpunten

Page 15: Testen binnen dev ops DTC 2014

15DevOps: de praktijk

Resultaat− Snel van ontwerp naar productie

− Minder fouten doordat een team direct de pijn ervaart…

− Maar, Ops als onderdeel van team is veelal lastig plannen!

− Productie-like (test)omgevingen blijken lastig!

− Geen controle (muren) is een cultuur omslag…

Page 16: Testen binnen dev ops DTC 2014

16Voordelen

Efficiënt samenwerken (Agile)− Geen muren

− Geen rollen

Snel van ontwerp naar productie− Veel releases, snel resultaat

− Kleine releases: impact van eventuele fouten klein

− Gehele proces geautomatiseerd: voorspelbaar!

Resultaat− Snel nieuwe functionaliteit op productie

− Weinig risico’s

Page 17: Testen binnen dev ops DTC 2014

17Nadelen/uitdagingen

Planning− Zeer dynamische omgeving: De wereld verandert snel!

− Operations is lastig plannen…

Veel afstemming noodzakelijk− Agile (Grooming, Planning, Stand-ups, Demo)

− Coördinatie omgevingen (release coördinator)

− Coördinatie werkzaamheden teams

− Impact fouten bij development/deployment kan snel groot worden

Page 18: Testen binnen dev ops DTC 2014

18Leerpunten / aandachtspunten

Van begin af aan goed plannen! (SCRUM poker)

Afstemmen / coördineren niet onderschatten! Tijd voor inplannen.

Vooraf goed nadenken over rollen/autorisaties

Omgevingsbeheer (omgeving coördinator)

Team is verantwoordelijk! Geen controles/muren…

Tot slot: De tester als Linking Pin

Page 19: Testen binnen dev ops DTC 2014

19

Development Quality Assurance

Technical Operations

DevOps

Page 20: Testen binnen dev ops DTC 2014

20

www.ordina.nl


Top Related