Testautomatisering? Ik zeg, doen!

17
Testautomatisering? Ik zeg, doen! André Verschelling Senior Testconsultant High Tech 29 november 2011

description

Keynote (Dutch) held at a customer event of Sogeti High Tech Netherlands on test automation. Despite problems of technical nature (how to execute tests on an embedded system for example) or difficult proof of ROI, it is always beneficial to automate tests. Mainly because it helps you to fulfil your chosen test strategy. This keynote was presented at November 29th, 2011, Eindhoven

Transcript of Testautomatisering? Ik zeg, doen!

Page 1: Testautomatisering? Ik zeg, doen!

Testautomatisering?Ik zeg, doen!André Verschelling

Senior Testconsultant High Tech

29 november 2011

Page 2: Testautomatisering? Ik zeg, doen!

2

Vervangen we de testers door Robots?

Klantenseminar Oktober 2008

Page 3: Testautomatisering? Ik zeg, doen!

3

Testautomatisering

• Doen we het al?

• Gebrek aan tijd, geld, resources

• Slechte ervaringen in het verleden

• Kan niet bij mijnsysteem / product

•Mijn omgeving is tedynamisch

Page 4: Testautomatisering? Ik zeg, doen!

4

Testautomatisering

•Met testautomatisering wordt het:− … Beter− … Sneller

− … Vaker

− … Efficiënter

− … Goedkoper

− …

• Te mooi om waarte zijn?

Page 5: Testautomatisering? Ik zeg, doen!

5

Waar doen we het voor?

Page 6: Testautomatisering? Ik zeg, doen!

6

Strategie

Deelsysteem / Kenmerk Risico UT ST FAT UAT/SAT

Functionaliteit

- Deelsys 1 A

- Deelsys 2 B

- Totaal A

Gebruiksvriendelijkheid C

Performance B

Enz.

Page 7: Testautomatisering? Ik zeg, doen!

7

Testontwerptechnieken en dekking

Testontwerptechnieken

Kwaliteits attribuut / Licht / Gemiddeld / Zwaar

Functionaliteit-Algemeen

DCoT-equivalence classesSYN-checklist (limited)

UCT-checklistEG

DCoT pairwise testingDCyT (life cycle of the

data) CRUDDCyT (integrity rules)

decision coveragePCT-test depth level 2SYN (prioritised list)

SEM-condition/decision coverageUCT-paths

ET

DCoT-N-wise testingDCyT (life cycle of the data) CRUD (extra Rs)DCyT (integrity rules)

modified condition/decision

coverageRLT-operational/load

profilesSEM-modified

condition/decision coverage

UCT-decision points

Functionaliteit-Detail

DTT- condition/decision coverage

DCoT-equivalence classesECT- condition/decision

coverageEG

DCoT-pairwise testingECT-modified

condition/decision coverage

ET

DTT- multiple condition coverage

(+ boundary values)DCoT-N-wise testing

ECT-multiple condition coverage

EA

Enz…

Page 8: Testautomatisering? Ik zeg, doen!

8

Testautomatisering

• Scoren met een SMASH!− S: Supportive

− M: Measurable

− A: Achievable

− Sh: Short-term benefit(with a Long-term goal)

Page 9: Testautomatisering? Ik zeg, doen!

9

Deelsysteem / Kenmerk Risico UT ST FAT UAT/SAT

Functionaliteit

- Deelsys 1 A

- Deelsys 2 B

- Totaal A

Gebruiksvriendelijkheid C

Performance B

Enz.

Scoren met een SMASH

• Ondersteunend(S: supportive)

•Maakt de teststrategie waar− Keuzes voor dekking

− Keuzes voor testsoort(en)

− Keuzes voor testontwerptechnieken

Testontwerptechnieken

Kwaliteits attribuut / Licht / Gemiddeld / Zwaar

Functionaliteit-Algemeen

DCoT-equivalence classesSYN-checklist (limited)

UCT-checklistEG

DCoT pairwise testingDCyT (life cycle of the

data) CRUDDCyT (integrity rules)

decision coveragePCT-test depth level 2SYN (prioritised list)

SEM-condition/decision coverageUCT-paths

ET

DCoT-N-wise testingDCyT (life cycle of the data) CRUD (extra Rs)DCyT (integrity rules)

modified condition/decision

coverageRLT-operational/load

profilesSEM-modified

condition/decision coverage

UCT-decision points

Page 10: Testautomatisering? Ik zeg, doen!

10

Ondersteunend aan Teststrategie

• Real-life test met Operational Profile

•Welke handeling heeft de grootste kans van optreden onder bepaalde omstandigheden?

• Test case: Sequentie van handelingen

• Test case kiest de volgende handeling op basis van het operational profile

evStop evRewind <a>::X

evPlay <b>::X

evFastForward <c>::X

evRecord <d>::X

Standby 0 0.2 0.5 0.2 0.1

Rewind 0.3 0 0.6 0.1 0

Play 0.5 0.3 0 0.2 0

Fast forward 0.5 0.1 0.4 0 0

Record 1 0 0 0 0

Playcounter >= 15000

0.8 0.15 0 0.05 0

Page 11: Testautomatisering? Ik zeg, doen!

11

Scoren met een SMASH

•Meetbaar(M: Measurable)

•Meetbaar toegevoegde waarde− Dekkingsgraad bij gekozen dekkingsvorm− Requirements coverage− Percentage regressiefouten− EMTE (Estimated Manual Test Effort) uren

Page 12: Testautomatisering? Ik zeg, doen!

12

Scoren met een SMASH

• Haalbaar(A: Achievable)

• Randvoorwaarden zijn ingevuld− Testers− Ontwikkelaars− Systeem− Ontwikkelomgeving

Test Automation Framework

Test Case

Test Resultaat

Interface

Systeem

Page 13: Testautomatisering? Ik zeg, doen!

13

Scoren met een SMASH

• Tijdig voordeel(Sh: Short Term benefit)

• Eerste resultaten tijdens project− Wat niet handmatig kan eerst− Wat het meeste voordeel oplevert daarna− Wat het niet waard is niet

• Afgestemd op de toekomst

Page 14: Testautomatisering? Ik zeg, doen!

14

Welke keuzes?

• Invullen van de strategie

•Meten is weten

• Kennis en competenties

• Klein beginnen, maar groot denken

Page 15: Testautomatisering? Ik zeg, doen!

15

Conclusie

•Winnen wordt bepaald door de juiste verhouding van scoren en kansen missen. Je kan beter twee keer scoren uit drie kansen dan één keer scoren uit acht kansen. Maar je hebt wel kansen nodig om te scoren.Johan Cruijff

Daarom zeg ik: Doen!

Page 16: Testautomatisering? Ik zeg, doen!

16

Vragen?

Page 17: Testautomatisering? Ik zeg, doen!

17

staat voor resultaat