JigZaw. Teststategi utviklet av. Erik Drolshammer Bård Lind. Verifiser Forventet Funksjonalitet

Like dokumenter
JigZaw - Verktøy. Teststategi utviklet av. Erik Drolshammer Bård Lind. Verifiser Forventet Funksjonalitet

Automatisert Robusthetstesting. Erik Arisholm Testify AS

Livsløpstesting av IT-systemer

Effektiv testing. Per Otto Bergum Christensen September, JavaZone. Bergum Christensen Consulting

Testplan (Software Test Plan)

A tool for collaborating to success in a development project Experience with Visual Studio 2010 and Test Manager at Lånekasse

Testdekning og automatisering - Er 100% testdekning et mål?

or*dtrosnilt,'+'.q':'

GJENNOMGANG UKESOPPGAVER 9 TESTING

Statisk testing. Testing uten datamaskin, men med vår egen evne til å vurdere og analysere

Verdien av god leverandørtesting i konstruksjonsfasen i smidige prosjekter

Modernisering av IKT i NAV

Test i Praksis. NTNU Februar Copyright 2014 Accenture All Rights Reserved.

Regelbaserte systemer for beregning av pensjon

PRESENTASJON NORDIG OKTOBER Alle skal kunne teste alt - overalt

System integration testing. Forelesning Systems Testing UiB Høst 2011, Ina M. Espås,

Alle skal kunne teste alt - overalt KDRS TRONDHEIM JUNI 2017

Testbilag til IT kontrakter

Validering og verifisering. Kirsten Ribu

Kirsten Ribu

Arkitektur. Kirsten Ribu Høgskolen i Oslo

Kandidat nr. 1, 2 og 3

Test i smidig. Laila Sandbæk Testrådgiver og testleder Sogeti

Inf1055 Modul B 26 april 2017:

Even self-organizing teams must have an architect!

Why Desperate Houswives make Excellent Test Managers Testprosjektet som suksessfaktor i et hvert prosjekt

Kontrakter og test i smidige prosjekter. Fagmøte Dataforeningen i Trondheim 12.Mars 2012

AlgDat 12. Forelesning 2. Gunnar Misund

altinn tjenester 3.0

Gruppe 43. Hoved-Prosjekt Forprosjekt

ISTQB Foundation Level Prøveeksamen

Test Beskrivelse Resultat Innhenting CBIS Programmet mottar data fra CBIS OK, men kun. Innhenting Tellus Programmet mottar data fra Tellus OK

Kort om evaluering og testing av It-systemer. Hvordan vurdere, verdsette, velge og teste?

Programvareutvikling hos Sun Microsystems. Jørgen Austvik Sun Microsystems Database Technology Group

KRAVSPESIFIKASJON v.1.2

Gårsdagens testroller takler ikke dagens utfordringer. Magnus Halvorsen og Erik Rogstad

Mellom barken og veden Smidig testing i krevende terreng TTC 2015

Frank Sandersen, EVRY 3. April Avansert integrasjon Saksbehandling med ephorte som arkiv

Kostnadseffektivt eller bortkastet tid? Øyvind Woll Seniorkonsulent, Vivento AS

NÆROSET IDRETTSLAG. Organisasjonsnummer:

Finansportalen Historiske bankdata

2/3/2014 INSTITUTT FOR FÔRIT CDS INFORMASJONSTEKNOLOGI, HØGSKOLEN I OSLO OG AKERSHUS. Shahariar Kabir Bhuiyan

A study of different matching heuristics. Hovedfagspresentasjon Jan Kasper Martinsen

K-Nett. Krisehåndteringssystem for Norges vassdrags- og energidirektorat i en beredskaps- og krisesituasjon. av Erik Mathiessen

Sikkerhetstesting gjennom utviklingsløpet

BlackBox, WhiteBox og andre testmetoder. Etter ønske fra studentene 26. november 2009

3. Kravspesifikasjon. Experior - rich test editor for FitNesse -

WORKSHOP RAPPORTERING SYSCOM CONNECT NOVEMBER 2016

Sosialt intranett med «verdens beste søk»

User Story Mapping gir en nyttigere backlog

1 Forord. Kravspesifikasjon

Arkitektur. Kirsten Ribu Høgskolen i Oslo

Feilsøking og avlusing

Oppgave 1 Multiple Choice

1. Hent NotaPlan Online Backup på 2. Trykk på Download i menyen og på Download i linjen med Notaplan Backup

AlgDat 10. Forelesning 2. Gunnar Misund

DevOps og Lean Startup: Eksempler fra virkeligheten. Eivind Arvesen

Enterprise Domain Repository

Statusrapport. MUSIT Ny IT-arkitektur Pilot. NØKKELINFORMASJON Rapporteringstidspunkt 12. august 2016 Rapporteringsperiode Juli 2016

Grunnleggende testteori

Skyløsninger. Sikkerhet og leveransemodell

Prosjektledelse - fra innsiden

Identitetsstyring og tilgangskontroll innenfor et SOA-regime. Ragna Fossen,

Offentlig journal Periode:

Forprosjekt Hovedprosjekt ved Høgskolen i Oslo Våren 2008

En bedre måte å håndtere prosjekt, team, oppgaver og innhold

MONTERINGSANVISNING TERMLIFT

Kravspesifikasjon MetaView

Dokument 1 - Sammendrag

4.5 Kravspesifikasjon

Teknisk gjeld - hvor mye er forsvarlig? Per Otto Bergum Christensen, Objectdesign 27 August, Smidig fagdag i SPK

Løsningsforslag Sluttprøve 2015

Cross the Tech Bridge. Anette Valaker

Systemutvikling - oppsummering. Alexander Nossum blog.eksplisitt.net 22. mai 2006

Software Development Plan. Software Development Plan. Forum / Nettverkssamfunn Team 2

1. NetBeans IDE: Lage en enkel mobilapplikasjon

Modellering IT konferanse

Bruk av NetBeans i JSP-delen av Web-applikasjoner med JSP og JSF

OptimalJ-kurs UIO Oppsummering av kurset. De ulike modellene egenskaper og formål

Lokale brukerundersøkelse høsten fylkessammenligning

Generelt om operativsystemer

4. Installasjonsveiledning. Experior - rich test editor for FitNesse -

Sigurd Gimre. Nøkkelkvalifikasjoner. Teamleder / Seniorkonsulent. E-post: sgimre@gmail.com Telefon mobil:

Oblig 5 Webutvikling. Av Thomas Gitlevaag

Innhold. Forord Innledning Del 1 HVORFOR SKAL DU BRUKE TID I SOSIALE MEDIER?... 15

Eksamen 2013 Løsningsforslag

Konsulent-ID: 2225 Curriculum vitae

Vanlige spørsmål om Teletopia SMS Gateway

Giftwrapping. New project; start at end

Problemstillinger fra programkomiteen

Testing tidlig i livssyklusen smidige prosjekter. Arne Erik Hurum Helsedirektoratet Bjørn Andersen - Steria

Automatisering av datasenteret

Bruk av ucmdb til SLM og Change Management EDB Business Partner Industri

Mamut Business Software. Introduksjon. Mamut Enterprise Variant Web

Dårlige tider gir gode verktøy - visualisering av komplekse feilsituasjoner -

Stein Grimstad. Konsulent i Scienta AS. Prosjekt hos Skatteetaten. Forsker hos Simula (deltid) 3/7/18

3.3 Case 3: Opprette en bruker Case 4: Endre en bruker... 8

Øvingsforelesning 3: Splitt og hersk. Daniel Solberg

Neste generasjon ERP-prosjekter

Innsending av timelister. Timeliste. Innsending

Transkript:

JigZaw Verifiser Forventet Funksjonalitet Teststategi utviklet av Erik Drolshammer Bård Lind

Bård Lind Java siden 1997 Arkitekt siden 2000 JavaBin siden 1999 Enterprise Domain Repository og JigZaw-teststrategi Arkitekt i Telenor CID/CSS siden 2009 Twitter: baardl bard.lind@telenor.com

http://wiki.cantara.no/display/smidigtonull/jigzaw

Hva vi ønsker å oppnå Ultimat mål: kortere tid fra idee til produksjon Bruke mindre tid på testing totalt sett. Hvordan: Splitt og hersk (Divide and Conquer) Grupper kan være avhengig av hverandre. Verktøy tilgjengelig lar deg teste det du ikke kunne teste før. Sum av tester verifiserer forventet funksjonalitet.

Forutsetning Enhetstesting med Junit brukes i prosjektet CI server brukes i prosjektet Automatisk bygg via Maven, eller Ant Prosjekt == Produkt, kostnader slutter ikke når 1. leveranse er gjort

Felles språk Ende-til-ende test Klassisk trelagsarkitektur Unit vs manuell/automatisert-manuell test. Stub og Mock er vanlig Verifiser Forventet Funksjonalitet JigZaw i Telenor Terminologi Hva er en Integrasjonstest? Systemtest?, SI Test? VKT?

Når passer JigZaw Remote-centric arkitektur. Standard webapplikasjon. Enterprise testing.

Teori A. Oppdeling i Ansvar Gi hver test ett eksplisitt ansvar B. Grupper testene dine C. Timeline Summen av tester Verifiserer Forventet Funksjonalitet.

A. Oppdeling i Ansvar Symptomer på trøbbel i horisonten. DP1. Single Responsibility Principle DP2. Divide and Conquer

Symptomer på trøbbel A. Oppdeling i Ansvar Symptomer DP1. Single Responsibillity Principle DP2. Divide and Conquer Komplekst prosjekt. Vanskelig å skrive gode tester. Tungt å vedlikeholde tester. Utvikling av funksjonell kode hemmes av testendringer. Testing tar tid. Krøkete å kjøre tester til grønt. Vanskelig å diskutere tester.

Single Responsibillity Principle A. Oppdeling i Ansvar Symptomer DP1. Single Responsibillity Principle DP2. Divide and Conquer Test kun en funksjon om gangen. En test skal kun ha en grunn til å endres. Minimer overlapp mellom tester. Eksempel

Divide and Conquer A. Oppdeling i Ansvar Symptomer DP1. Single Responsibillity Principle DP2. Divide and Conquer Del opp ansvar i enkle blokker Når noe er vanskelig, del opp, løs kjerneproblemet. Tester fra GUI til DB vil feile!

B. Grupper testene dine DP3. Grupper tester eksplisitt Forslag til grupper.

DP3. Grupper tester eksplisitt Basert på forutsetninger Ressurser testen trenger Tid det tar å kjøre testen Datasett nødvendig for å sette pre/post conditions. Samme test kan være medlem av flere grupper. Test-dependency En test kan være avhengig av en annen.

Gruppeeksempler http://wiki.cantara.no/display/smidigtonull/jigzaw

Egenskaper å gruppere etter Full isolasjon Flere noder? Med data Uten Data Med miljø Uten miljø Rask test Treg test Manuell

Eksempel testgrupper Enhetstest (Unit) Service test Multi-service test System test System multinode test Full isolasjon Enkelte metoder Public tjeneste Kode nær White box (åpent innhold) Flere prosesser En node Funksjonelle krav Ikkefunksjonelle krav Black box (lukket kode) Flere fysiske noder

C. Timeline DP6. Timeline Eksempel Performance tester

V-modellen test-nivåer Acceptance test System test Integration test Unti test Ref. http://en.wikipedia.org/wiki/v-model_(software_development)

Timeline eksempel Før Commit I sprinten Ved sprint demo/avsluttning Før produksjonsetting

Når kjøre hvilke tester? Før commit 10 min Hver time Systems integrati on Daglig Ukentlig End-ofsprint Acceptance Med Data X X X Uten data X X X X Med Miljø X X X Uten Miljø X X X X Rask test X X X Treg test X X X Manuell X X X Load-test???? X Test-properties vs Timeline

Verifiser Forvenet Funksjonalitet A. Oppdeling i Ansvar Gi hver test ett eksplisitt ansvar B. Grupper testene dine C. Timeline Summen av tester Verifiserer Forventet Funksjonalitet.

Designprinsipper DP1. Single Responsibility Principle DP2. Divide and Conquer DP3. Grupper tester eksplisitt DP4. Velg den testmetode som gir lavest kost i levetiden til prosjektet. DP5. Test og testrapporter har forskjellig publikum. DP6. Timeline

Kommunikasjon Forbedret kommunikasjon i teamet.

Ukjent med applikasjonen Ny på teamet Driftsperspektiv Bruk mindre tid på å oppdage feilen. Bruk mindre tid på å finne årsaken.

Key take-aways Splitt og hersk (Divide and Conquer) Grupper kan være avhengig av hverandre. Verktøy tilgjengelig lar deg teste det du ikke kunne teste før.

Mer Info http://wiki.cantara.no/display/smidigtonull/jigzaw erik.drolshammer@gmail.com bard.lind@telenor.com, twitter: baardl Cantara - Mature and empower Norwegian software development.- Cantara er et åpent forum for deling av kompetanse på tvers av firmarelasjoner.