Nye testteknikker fra ISTQB - direkte fra hylderne. Ole Chr. Hansen



Relaterede dokumenter
Go Digital slide her

Test af Cloud-baserede løsninger DSTB Ole Chr. Hansen Managing Consultant

Behov for mere indsigt i softwaretest? Anvend testmetrikker!

Test i Danmark. Undersøgelse på. TestExpo

Test i Danmark Undersøgelse på TestExpo 2014

Lav testsuppe på en sten med exploratory test

FRA USECASE TIL TESTCASE HP TEST BRUGERKONFERENCE, 10. APRIL 2014

Plan for præsentationen

Agil test tilgang - erfaringer fra projekter

Testerens værktøjsbælte - testdesignteknikker

IT Service Management (ITIL) i en agil verden. Lars Zobbe Mortensen

Certificeret Tester. Advanced Test Analyst Pensum

Vurdering af kvalitet en note af Tove Zöga Larsen

Agil-model versus V-model set i lyset af en testers dilemmaer

Certified Tester Pensum for Foundation-niveauet

Den røde tråd fra testdækning til releasemetrikker

BILAG 0 TIL KONTRAKT OM EOJ-SYSTEM DEFINITIONER

#TestExpo. Test I en skaleret udviklingsmodel

DSDM Agil projektledelse

Procedure for systemtest

CV Jakob Niemann. Resumé: Nøglekvalifikationer. Personlighed. Født: 24/

Product Ownerens værktøjskasse

Jammerbugt Kommune. Periodisk audit, P2. Ledelsessystemcertificering. Kvalitetsstyring - iht. Lov 506 af og Bek af

DANMARKS NATIONALBANK LEVER AGIL UDVIKLING STADIG I DET VILDE VESTEN

Noter fra workshop med OS2

Infoblad. ISO/TS Automotive

Idékatalog Planlægning og brug af test i statslige it-projekter

Martin Larsen Lyneborggade 31, 3. Th Kbh. S tlf.: mail@martinlarsen.dk. :: Stilling Projektleder og forretningskonsulent

Vejledning til verifikationsrapport TF 3.2.5

[A20] Kick off document and process description. 1 of 5

Certificeret Tester. Advanced Test Manager Pensum

Problemstilling ved DBK integration i BIM Software Hvad skal der til. Nicolai Karved, Betech Data A/S

Testprocesser og målinger i test. Jesper Schultz, Nykredit 19. november 2009

Præsentation og praktisk anvendelse af PROC GLMSELECT

Kontrakt om Videreudvikling, Vedligeholdelse og Support af IMK2- systemet

Teksten i denne instruktion er ikke en del af Kontrakten og vil blive fjernet ved kontraktindgåelse.

Kvalitetssikring og agile udvikling

Bias Reducing Operating System - BROS -

Programmering C Eksamensprojekt. Lavet af Suayb Köse & Nikolaj Egholk Jakobsen

Kvantitative Metoder 1 - Efterår Dagens program

The LEGO Journey: Building an agile test foundation one brick at the time. Casper Gaardland Englund. Stephan Hjelmdal Nielsen The LEGO Group l

Studie af Beståelsesgrænsen for International Board Certified Lactation Consultant (IBCLC ) Certificeret Eksamene

dfgfdhsjfgdghjghfkfhgkfhjsrt Hvad skal en kontrakt indeholde om kvalitetssikring og test? Niels Chr. Ellegaard Plesner Advokatpartnerselskab

Behavior Driven Test and Development. ebay Classifieds

Nexus Guide. Den definitive guide til Nexus: Et ydre skelet for skaleret Scrum udvikling. Udarbejdet og vedligeholdt af Ken Schwaber og Scrum.

Agile metoder og kontrakter

Undervisningsbeskrivelse

Undervisningsbeskrivelse

Udbud af RIPA-Syd. Underbilag 14.A - Definitioner og testtype katalog

Mannaz date. Skab optimale projekter med de rigtige kompetencer. Kortere og længere udviklingsforløb for projektledere.

Hassansalem.dk/delpin User: admin Pass: admin BACKEND

Det vigtigste først! Dette er måske den vigtigste bog der nogensinde er skrevet om agile vs. vandfald. Muligvis fordi det vel stadig er den eneste

Underbilag 14 C: Afprøvningsforskrifter til prøver og tests

Februar Scrum: Udviklet og vedligeholdt af Ken Schwaber og Jeff Sutherland

Daglig brug af JitBesked 2.0

PRINCE Projekt & Program Forum

Undervisningsbeskrivelse

Noter til dm529. Jonas Nyrup. 11. november 2011

Bilag 6 Afprøvninger Version

GODKENDELSESKRITERIER

Normalfordelingen og Stikprøvefordelinger

Certified Tester Foundation Level Syllabus

Responsivt Design - DMAA0213. Afgangsprojekt DMAA0213

BRUTTO CV Peter Petersen

Netplan A/S. Periodisk audit, P1. Ledelsessystemcertificering ISO 9001: aug-30 til 2013-aug-30. Certificeringens dækningsområde

Mangelfuldt dokumenterede it-systemer. Hvordan løses udfordringen?

dfgfdhsjfgdghjghfkfhgkfhjsrt Test som praktisk håndværksdisciplin Sara Stürup Willer

Mamut Business Software. Introduktion. Mamut Enterprise DanDomain

SOLRØD KOMMUNE ESDH. Afprøvning. Bilag 6

Agil projektledelse. Dansk IT 3. august Plan A ApS

Egedal Kommune. Re-certificeringsaudit. Ledelsessystemcertificering ISO 9001: apr-28 til 2015-apr-29. Certificeringens dækningsområde

Seminar om agil projektledelse vs. PRINCE2

Kontraktbilag 8 Prøver

BILAG 6 TEST OG PRØVER

Projektlederens roller og kompetencer. Cases til Projektlederens roller og kompetencer

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

IT-KONTRAKTER HVORDAN HÅNDTERES BEHOVET FOR FLEKSIBILITET I PRAKSIS?

Dynamicweb Quickguide

IT-Universitetet, Projekt- og Programledelse November 2013 AGIL PROGRAMLEDELSE

Øg sporbarhed og produktivitet gennem integration

Uddannelse: Født: 1973

leverance af variable vejtavler

Visual Studio Team System. Team Build en grundpille i søgen efter it-projektproduktivitet?

Testing Tuesday 07.Juni Aarhus. CapgeminiSogeti

Dansk testbegrebsliste version 1.0

Stadig ferietid men læs her vigtige informationer. Afgørelser på papir. Nyhedsbrev nr august 2015

Microservices. Hvad er det og hvordan kommer du i gang?

Combipack Danmark A/S

Vejledning og kommentarer til ny version

TEST MANAGEMENT I ANSKAFFELSESPROJEKTER. DSTB generalforsamling 22/

Kursusindhold: Produkt og marked - matematiske og statistiske metoder. Monte Carlo

1 Ingen klartone: Undersøg kablet og undersøg forbindelsen (tilslut eventuelt en telefon).

Case. Niels Brocks Roberta

KMD Nexus Partner Program

Pixi vejledning til TeamShare

Hukommelsesspil. Introduktion. Scratch

Scrum og agile. Torsdag d. 29. november 2007

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt.

Seminar om agil projektledelse vs. PRINCE2

Transkript:

Nye testteknikker fra ISTQB - direkte fra hylderne Ole Chr. Hansen TestExpo 29. Januar 2015

Præsentation Ole Chr. Hansen Managing Consultant Fellow SogetiLabs Global Innovation Team Blog - http://ochansen.blogspot.com LinkedIn: www.linkedin.com/in/ochansen Twitter: www.twitter.com/ole_chr_hansen ISTQB Accredited Trainer in Software Testing ISEB Practitioner Certificate in Software Testing ISTQB Foundation Certificate in Software Testing TMap NEXT Test Engineer Certificate TPI NEXT Foundation Certificate PRINCE2 Foundation Certificate Certified Scrum Master Certified Lead Assessor (ISO 9000) Sogeti, ATP, Nordea, BRFkredit, WM-data, CRI, LEC 15+ år inden for softwaretest, 10+ år inden for it-udvikling/projektledelse 2

Test teknikker Testanalytikerens værktøjskasse 3

Hvad er nyt Testteknik ISTQB ATA Pensum 2007 2012 Ækvivalenspartitionering X X Grænseværdianalyse X X Beslutningstabeller X X Årsags-virkningstest X X Tilstandsovergangstest X X Klassifikationstræmetode X X Parvis test X X Ortogonale arrays (del af parvis test) X X Usecase test X X Userstory test X Domæneanalyse X 4

Domæneanalyse

Domæneanalyse Introduktion Et domæne er et defineret sæt af værdier. Lige som ækvivalenspartition alle værdierne i en partition forventes at blive håndteret på samme måde af systemet: Hvis en værdi fungerer så fungerer alle Hvis en værdi fejler så fejler alle Præmis for at det er en partition Endimensionelt domæne en variabel. Multidimensionelt domæne to eller flere variable som interagerer. Eksempel: Mænd over 24 år og under 66 år, og med vægt over 69 kg og under 90 kg. 6

Domæneanalyse Fordele Brug af ækvivalenspartitionering og grænseværdianalyse vil få antallet af testcases til at stige eksponentielt. Domæneanalyse: Har den fordel, at den kun vil give en liniær stigning i antal testcases. Vil kunne finde defekter i multidimensionelle domæner, som de større testsæt ikke vil finde. Det kræver it-understøttelse at bestemme værdierne til testcases ved 3 eller flere dimensioner. 7

Domæneanalyse Anvendelighed Anvendelighed: Kombinerer de teknikker, der anvendes for beslutningstabeller, ækvivalenspartitionering og grænseværdianalyse. Identificerer et mindre antal testcases Dækker de vigtigste områder Sandsynlige fejlområder. Anvendes ofte, hvor beslutningstabeller bliver for store grundet et stort antal variable/betingelser. Kan anvendes på alle testniveauer mest integrations- og systemtest. 8

Domæneanalyse Begrænsninger Begrænsninger: Kræver en stærk forståelse af softwaren for at identificere domænerne og den eventuelle interaktion mellem dissse. Hvis et domæne er uidentificeret kan testen blive mangelfuld men vil sandsynligvis blive fundet for nogle af værdierne vil lande der. Mest anvendelig til partitioner der består af kontinuerte værdier. 9

Domæneanalyse Definition Domæneanalyse En black-box testdesignteknik, der bruges til at identificere effektive og egnede testcases, når flere variabler kan eller bør testes sammen. Den bygger på og generaliserer ækvivalenspartitionering og grænseværdianalyse. Se også grænseværdianalyse, ækvivalenspartitionering. Grænseværdianalyse - En black-box testdesignteknik, hvor testcases designes baseret på grænseværdier. Ækvivalenspartitionering - En black-box testdesignteknik, hvor testcases er designet til at eksekvere repræsentanter fra ækvivalenspartitioner. I princippet designes testcases til at dække hver partition mindst en gang. Kilde: ISTQB Terminologiliste, version 2.2 10

Domæneanalyse Typiske defekter Defekter omfatter funktionelle problemer inden for domænet grænseværdihåndtering problemer med interaktion mellem variable fejlhåndtering specielt for de værdier, der ikke er i et gyldigt domæne 11

Domæneanalyse - Værdier INDE: Repræsenterer en værdi, der er i partitionen/domænet. UDE: Repræsenterer en værdi, der er uden for partitionen/domænet/grænsen. PÅ: Repræsenterer en værdi på grænsen af partitionen/domænet. UDENFOR: Repræsenterer en værdi lige uden for partitionens/domænets grænse mindst mulige nominelle værdi. Ved bestemmelse af disse værdier testes hver partition sammen med dens grænsebetingelser. Vær opmærksom på: LUKKEDE grænser (>=, <=, =) PÅ er i domænet ÅBNE grænser (<, >) PÅ er ikke i domænet 12

Domæneanalyse Værdier / Optimere testen Y Optimering af testen ingen gentagelse af en test. 200 En INDE værdi for et domæne er en UDE værdi for andet. 150 100 D1 D2 INDE D2 UDE D1 50 UDENFOR PÅ 50 100 150 200 X 13

Domæneanalyse Dækningskriterier Dækning: Graden, udtrykt som en procentdel, af aktivering af et specificeret dækningselement ud fra en sekvens af testcases. Dækningselement: En enhed eller egenskab, der anvendes som grundlag for testdækning. Dækningskriterier for domæneanalyse: Minimumsdækning for domæneanalyse vil være at have en test for hver INDE, UDE, PÅ og UDENFOR-værdi for hvert domæne. Hvor der er overlap mellem værdierne, er der ingen grund til at gentage testen. Derfor er der ofte færre end fire tests pr. domæne. 14

Domæneanalysematrix Variabel Betingelse Type 1 2 3 4 5 N V1 B1 PÅ UDENFOR B2 PÅ UDENFOR Bn PÅ UDENFOR Typisk INDE Forventet resultat En værdi er i PÅ eller UDE alle andre i INDE Hver kolonne har præcis en værdi pr. variabel 15

Domæneanalysematrix Domæneanalysematricen udfyldes som følger: 1. Udfyld variabelnavne 2. Udfyld betingelser 3. Tilføj TYPISK for hver variabel 4. Tilføj PÅ og UDE 5. Tilføj værdier til alle variable 6. Udfyld INDE værdien 7. Udfyldt næste kolonne ved brug af PÅ og UDE rækkerne 16

Domæneanalyse - Eksempel Entre-billet til et arrangement koster 200 DKK. Kun hele DKK. Der kan betales kontant og/eller med kreditkort Kun kontant Kun kreditkort Kombination af kontant og kreditkort (summerer til 200 DKK) 17

Domæneanalyse - Eksempel Domænet: Kontant Alle værdier mindre end 0 Grænse Alle værdier større end 0 Kontantbetingelse: X >= 0-155 -1 0 45 UDE UDENFOR PÅ INDE 18

Domæneanalyse - Eksempel Domænet: Kreditkort Alle værdier mindre end 0 Grænse Alle værdier større end 0 Kreditkortbetingelse: X >= 0-12 -1 0 155 UDE UDENFOR PÅ INDE 19

Domæneanalyse - Eksempel Domænet: Kombination af Kontant og Kreditkort Alle værdier mindre end 200 Grænse Alle værdier større end 200 Betingelse: 199 200 201 Kontant + Kreditkort = 200 DKK UDENFOR PÅ UDE

Domæneanalyse - Eksempel Kontant 200 150 100 50 50 100 150 200 Kreditkort

Domæneanalyse - Eksempel Variabel Betingelse Type 1 2 3 4 5 6 7 Kontant X >= 0 PÅ 0 UDENFOR -1 Typisk INDE 45 45 Kreditkort X >= 0 PÅ 0 UDENFOR -1 Typisk INDE 155 155 Kombineret K&KK X + Y = 200 PÅ 45/15 5 UDENFOR 159/4 0 UDENFOR 121/8 0 INDE Forventet resultat Ej OK Ej OK Ej OK Ej OK OK Ej OK Ej OK

Domæneanalyse - Multidimensionelt Viste eksempel to-dimensioner. Kunne være multi-dimensionelt: Anvendelse af flere kreditkort. 23

User story test

Agile. Agile metoder f.eks. Scrum forberedes kravene i form af user stories, som beskriver små funktionelle enheder, der kan designes, udvikles, testes og demonstreres i en enkelt iteration. 25

User story test User story: Titel og nummer Som Vil jeg Med det formål at Værdi, Risiko, Estimat, Acceptkriterier 26

User story test Definition User story test En black-box testdesignteknik hvor testcases designes med udgangspunkt i user stories for at kontrollere at disse er korrekt implementeret. Se også user story. User story - Et høj-niveau bruger- eller forretningskrav, almindeligvis anvendt i agil softwareudvikling, typisk bestående af en eller flere sætninger i hverdags- eller forretningssprog, og som beskriver hvilken funktionalitet en bruger behøver, eventuelle ikke-funktionelle kriterier, samt godkendelseskriterier. Se også agil softwareudvikling, krav. Agil softwareudvikling - En gruppe af softwareudviklingsmetodikker baseret på iterativ inkrementel udvikling, hvor krav og løsninger udvikles gennem et samarbejde mellem selvorganiserende tværfunktionelle teams. Krav - En betingelse eller evne, som en bruger behøver for at løse et problem eller opnå et mål, der skal opfyldes af - eller være indeholdt i - systemet eller systemkomponenten for at opfylde en kontrakt, standard, specifikation eller andet formelt indført dokument. [Efter IEEE 610] Kilde: ISTQB Terminologiliste, version 2.2 27

User story test Typiske defekter Defekter er normalt funktionelle der leveres ikke den specificerede funktionalitet integrationsproblemer med funktionaliteten der allerede er implementeret ses også Stories udvikles uafhængigt der kan forekomme performance-, interface- og fejlhåndteringsproblemer Vigtigt at teste både den leverede funktionalitet og integrationen ved frigivelse af en ny story. 28

User story test Dækningskriterier Dækning: Graden, udtrykt som en procentdel, af aktivering af et specificeret dækningselement ud fra en sekvens af testcases. Dækningselement: En enhed eller egenskab, der anvendes som grundlag for testdækning. Dækningskriterier for user story test: Minimum dækning af en user story er at verificere, at hvert af de specificerede acceptkriterier er blevet opfyldt. 29

User story test Anvendelse Anvendelse Anvendes primært i agile og tilsvarende iterative og inkrementelle miljøer Både funktionel og ikke-funktionel test Test på alle niveauer Udvikleren demonstrerer user storyens implementerede funktionalitet for teamet. 30

User story test Begrænsninger Begrænsninger Små forøgelser af funktionalitet Udvikle og bruge stubbe og drivere Bruge API-værktøjer Normalt udviklerens opgave og ansvar Kontinuert integrationsmodel ses ofte i agile projekter Behovet for stubbe og drivere minimaliseret F.eks. Først laves en succes-scenarie denne kode kan dermed anvendes af andre udviklere i stedet for stubbe/drivere. Der mangler fortsat fejlhåndtering, afvisning af ugyldige værdier m.m., hvilket leveres senere. HUSK: Behovet for regressionstest vil øges for alle iterationer efter den første. 31

User story test Eksempel User story: 1 Køb med kreditkort Som KUNDE Vil jeg KUNNE BETALE MED KREDITKORT Med det formål at KØBE PRODUKTER Acceptkriterier: Alle gængse kreditkort Kreditmax tjek Testcases gængse kreditkort: Dankort, VISA, Mastercard, Diners, Amex.. Kreditmax tjek: Inden for kreditmax, på kreditmax, overskreden kreditmax.. 32

Afslutning

Hvad er nyt Testteknik ISTQB ATA Pensum 2007 2012 Ækvivalenspartitionering X X Grænseværdianalyse X X Beslutningstabeller X X Årsags-virkningstest X X Tilstandsovergangstest X X Klassifikationstræmetode X X Parvis test X X Ortogonale arrays (del af parvis test) X X Usecase test X X Userstory test X Domæneanalyse X 34

Spørgsmål 35