Testen binnen dev ops DTC 2014
-
Upload
kaspar-van-dam -
Category
Business
-
view
200 -
download
1
description
Transcript of Testen binnen dev ops DTC 2014
DevOpsTesten als ‘Linking pin’ tussen Dev en Ops
Dutch Testing Conference, 9 april 2014
1
DevOpsWat is het?
3Wat is DevOps?
Development Quality Assurance
Technical Operations
DevOps
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
Rollen binnen DevOpsDev, Ops en QA
6Development
Zoveel mogelijk kleine aanpassingen
Snel naar productie− Geautomatiseerd deployen
− Gebruik van centrale build&deploy server met generieke handelswijze
180
7Operations
Betrokken bij ontwikkeling en test
Betrekt rest van het team bij Operations
STOP
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)
9Quality Assurance
Snel accepteren− Acceptatietesten in nauwe samenspraak met PO
− Geen muren tussen business (PO) en IT
− Acceptatietesten zoveel mogelijk geautomatiseerd
− Performancetesten geautomatiseerd
10Quality Assurance
Linking pin tussen Development en Ops
DevOpsQA
180
STOP
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
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.
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
DevOps: De PraktijkVoordelen, nadelen, leerpunten
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…
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
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
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
19
Development Quality Assurance
Technical Operations
DevOps
20
www.ordina.nl