Upload
others
View
81
Download
0
Embed Size (px)
Citation preview
#MM18DE
Andreas MautzTechnischer Geschäftsführer (CTO) - webvisum GmbH
Vita:Entwickler/TrainerDiplom WirtschaftsinformatikPHP seit 1998Zwischenstopps in der Qualitätssicherung in großen IT ProjektenMagento seit 2008FireGento e.V. VorstandsmitgliedAktueller Fokus: Deployment und Infrastructure
Twitter : @mautz_et_tong
#MM18DE
Was wird getestet?Unit testingIntegration testingSystem testingAcceptance testing*
Know your target
#MM18DE
„Ein Akzeptanztest oder Abnahmetest, engl. User Acceptance Tests (UAT) ist in der Softwaretechnik die Überprüfung, ob eine Software aus Sicht des Benutzers wie beabsichtigt funktioniert und dieser die Software akzeptiert“
Was ist Acceptance Testing
#MM18DE
Kalkuliere das Schreiben von Tests als Teil deiner KostenPlane Tests als Teil deines Entwicklungsprozesses
Warum sollte man testen? - Zusammenfassung
#MM18DE
Source
Warum sollte man testen? - Vorteile von automatisierten Tests
70%* schneller als manuelles TestenUmfangreichere TestsSpart Zeit und GeldErhöht die FehlerfreiheitErhöht die EffizienzWiederholbarDokumentiert
#MM18DE
Source
Warum sollte man testen? - Vorteile von automatisierten Tests
Und:Alle schlafen besser
#MM18DE
Wähle ein FrameworkInstalliere esErstelle TestsWerte die Ergebnisse aus
Wie startet man mit Acceptance Testing?
#MM18DE
codeception ist ein Testing Framework
Acceptance testingPHPUnit testingFunctional testingAPI testing
Was ist codeception?
#MM18DE
Komplett lokal und autark:„brew install composer codeception selenium-server-standalone chromedriver phantomjs“
Als Part des Projektes:„composer require codeception/codeception“
Wie teste ich? - Installation
#MM18DE
codecept bootstrap codecept generate:cest acceptance Samplecodecept generate:env chromecodecept run Sample --env chrome --steps —html
Wie teste ich? - Erstelle Tests
#MM18DE
Beispiel-Projekt aus der Live-Demo:https://gitlab.webvisum.de/samples/mmde18-sample.git
Wie teste ich? - DEMO
#MM18DE
Teste nicht, was du nicht brauchstReagiere auf alles, was beim Testen durchfälltTeste Erfolg und Fehler
Wie teste ich? - Grundlagen zur Testauswertung
#MM18DE
Pipeline mit Fehler im Test wird trotzdem genutzt:
Wie teste ich? - Sollbruchstellen in Pipelines
#MM18DE
Tipps zum Acceptance Testing:
Wichtige Dinge immer auf JEDEN Fall vor einem Deployment testenZufallstests in Feature- und Develop-BranchesNightly Builds benutzen für lange/viele Testcases und Core-Tests
Browserauflösung variierenDiashows nicht übertreiben, sondern sinnvoll Screenshots machen
Wie teste ich? - Testauswertung als Grundlage zur Optimierung und Verbesserung
#MM18DE
Ändere codeCode verbessern, auf Fehler reagieren
Ändere / erzeuge TestsTests korrigieren / verbessern, auf Code-Änderung reagieren
Wie teste ich? - Testauswertung als Grundlage zur Optimierung und Verbesserung 2
#MM18DE
BilderApplied Software Measurement, Global Analysis of Productivity and Quality, by Capers Jones, 1996https://presentations.entwicklungshilfe.nrw/codeception.html#/
CODE / SAMPLEShttps://gitlab.webvisum.de/samples/mmde18-sample.githttps://codeception.com/https://phpunit.de/https://www.braune-digital.com/blog/schnelleinstieg-tests-mit-codeception-selenium-und-chrome/https://styde.net/instalacion-de-codeception-con-composer-en-laravel/
FAKTENhttp://www.guru99.com/automation-testing.htmlhttps://de.wikipedia.org/wiki/Akzeptanztest_(Softwaretechnik)
Epilog - Quellen