Tester testen. Entwickler auch.

13
Andreas Günzel | EXXETA AG Tester testen. Entwickler auch.

description

Foliensatz zum Vortrag auf der JAX 2014 in Mainz.

Transcript of Tester testen. Entwickler auch.

Page 1: Tester testen. Entwickler auch.

Andreas Günzel | EXXETA AG

Tester testen.Entwickler auch.

Page 2: Tester testen. Entwickler auch.

Wir haben viel vor

• Warum Unit Tests wichtig sind• Besser Testen mit Mockito• Real Tests dank Arquillian• Die Mischung macht‘s

Page 3: Tester testen. Entwickler auch.

Meine Person

Andreas GünzelPrincipal Consultant

EXXETA AG

@leichtundkross

[email protected]

www.EXXETA.com

Page 4: Tester testen. Entwickler auch.

Fehlerkosten nach Projektphase

Phase Faktor* Beispielkosten: Bsp.-Zeit

Test100

6.000 €Test 10.000 € 4 -12 Wochen

Konzept/

Spezifikation1

60 €Konzept/

Spezifikation100 €

60 €taggleich

Codierung10

600 €Codierung 1.000 €

600 €1- 4 Wochen

Produktion 1.00060.000 €

100.000 €60.000 €

Bis 6 Monate

*Der Faktor ist aus der einschlägigen Literatur zum Thema Testen übernommen

Page 5: Tester testen. Entwickler auch.

Phasen der Softwareentwicklung (klassisch)

Systemanforderungs-analyse

System-Architektur

System-Entwurf

Software-Architektur

Software-Entwurf

Unit-Tests

Integrations-Tests

System-Integration

Abnahme und Nutzung

Zeit

Det

ailli

erun

g

Page 6: Tester testen. Entwickler auch.

Phasen der Softwareentwicklung (agile)

Quelle: www.readwriteweb.com

Page 7: Tester testen. Entwickler auch.

Unit-Test

• aka Modultest oder Komponententest

• Test der kleinsten Software-Einheit, die sinnvoll isoliert zu testen ist– Typischerweise eine Klasse oder eine

Schnittstelle

Page 8: Tester testen. Entwickler auch.

Warum wir nicht testen?

Keine ZeitKein Budget

Der Kunde wollte keine Unit Tests Das kann man

nicht testen

Die laufen bei mir eh nicht

Die Ausführung dauert einfach zu lange

… schreiben wir am Ende des Projekts

Page 9: Tester testen. Entwickler auch.

Live Coding

• … Test First!

Page 10: Tester testen. Entwickler auch.

Schnelles

Feedback

Langsames

Feedback

Großer Umfang

Geringer Umfang

Unit-Test

Integrations-test

Systemtest

UAT

Umfang vs. Geschwindigkeit

Page 11: Tester testen. Entwickler auch.

Build Pipeline

UnitTest

IntegrationTest

SystemTest

Deployment

Page 12: Tester testen. Entwickler auch.

Zum Schluss

• Tests sind die beste Dokumentation– TDD für aufgeräumte Tests

• Mockito ermöglicht– Entfernung externer Abhängigkeiten– Test des inneren Verhaltens

• Arquillian hilft, wenn– das Test-Setup schwierig ist– das Verhalten im Container im Vordergrund steht

• Richtige Kombination entscheidend

Page 13: Tester testen. Entwickler auch.

Vielen Dank fürIhre Aufmerksamkeit

@leichtundkross