Automatisierte Akzeptanztests. Olaf Eschenbruch

Ähnliche Dokumente
Geschwindigkeit + Qualität

Entwicklung von effizienten UI-basierten Akzeptanztests für Webanwendungen

Abnahme leicht gemacht

Entwicklung von effizienten UI-basierten Akzeptanztests für Webanwendungen

CD in the box. Jan Rümenapf Matthias Zieger

AGILES QUALITÄTSMANAGEMENT

DevOps bei den ID Build-Automatisierung statt Silo-Betrieb

GI Fachgruppentreffen RE 2015

DevOps with AWS. Software Development und IT Operation Hand in Hand. Matthias Imsand CTO Amanox Solutions AG

Continuous Everything

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg

Gutes Benehmen Akzeptanztest-getriebene Software-Entwicklung in einem Web-Projekt

AVECTRIS DAY 2017 AVECTRIS PRIVATE CLOUD: VERKÜRZTE TIME TO MARKET PER KNOPFDRUCK

Platform as a Service (PaaS) & Containerization

Entwicklung von qualitativ hochwertigen APEX Anwendungen. Sven Böttcher Consultant, Apps Associates GmbH

TDD. mit JUnit & Mockito. Tobias Trelle, codecentric

Von Acceptance Test-Driven Development zu Lean Modelling

Automatisierte Akzeptanztests für ios-apps. Sven Günther it-agile GmbH

Scrum Embedded. Scrum Embedded. Besonderheiten agiler Entwicklung von Embedded-Systemen. MicroConsult - Microelectronics Consulting & Training GmbH

E-Business. Fr. Hauser, WS 2018/

CONTINUOUS DELIVERY. Entmystifiziert. codecentric AG

Agile Apex - Life Cycle Management. Life Cycle Management für Apex Applikationen im agilen Projektumfeld

Micro Focus Unit Testing Framework in Visual COBOL 3.0. Rolf Becking 29.August 2017

Lean Modeling - Datenmodelle und Geschäftsregeln einfach und präzise mit natürlicher Sprache spezifizieren

Value Delivery and Customer Feedback

DevOps. Alexander Pacnik, Head of DevOps Engineering

Einführung von XP in der Praxis

Universität Bielefeld. Softwarepraktikum. Gernot A. Fink SS Rückblick extreme Programming (XP)

Wer bin ich. > Senior Consultant, Architekt und Trainer (MATHEMA Software GmbH) > 25+ Jahre Software > 12+ Jahre Java Enterprise > 7+ Jahre.

Automatisierte Akzeptanztests und TDD für ios

Wenn Tester Apps entwickeln. Stephan Wiesner

Scrum Gestaltungsoptionen Empowerment

SAP Software Engineering live Agile! Agiles Projektmanagement und Clean Code im SAP-Umfeld

Was kann man in APEX automatisieren?

Testen und Testautomatisierung in agilen Projekten

Agenda. Entmystifizierung. Fundamentaler Testprozess. Fazit. DevOps vs. Test Management

Behaviour Driven Testing Schließen der Lücke zwischen Fachtester und Testautomatisierer

JOHANNES SEITZ Continuous Integration Extreme!

Unit Testing, SUnit & You

Verzahnung von Detailspezifikationen mit automatisierbaren Testfällen

Testgetriebene Entwicklung

DIGICOMP OPEN TUESDAY AKTUELLE STANDARDS UND TRENDS IN DER AGILEN SOFTWARE ENTWICKLUNG. Michael Palotas 7. April GRIDFUSION

Das Kommunikations-Problem Architekten, Entwickler und die Code-Basis Zusammenfassung

Build-Pipeline mit Jenkins

Automatisierte GUI Tests in fachlichen Teststufen Patrick Möller

Datengetriebene Agilität als Motor der digitalen Stadt

Requirements basiertes Testen mit JUnit Architektur für eine Verbindung von Requirements Management und Test Management

Testautomatisierung als Bestandteil von agiler Softwareentwicklung. Ein Erfahrungsbericht

Trivadis-Gadgets im Dienste ihrer Qualität: FAAT und PL/SQL Cop

Life Cycle Management für Apex Applikationen im agilen Projektumfeld

WTO-AUSSCHREIBUNG FÜR APP-ENTWICKLUNG, AGILE BESCHAFFUNG, MINI-TENDER, AGILES UMFELD. Artur Tomczak Bern,

Aufbau einer effizienten Testautomatisierungslösung

DEVOPS AUS DER PERSPEKTIVE EINES

Test offener, dynamischer Systeme

Requirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit

Modellgetriebene Softwareentwicklung

Lean Modeling - Software Systeme einfach und präzise mit natürlicher Sprache spezifizieren

Testing in an agile world

Mit den 5 Prinzipien der Lebendigkeit für Anforderungen komplexe Systeme meistern. Dr.-Ing. Thaddäus Dorsch, HOOD GmbH,

Erfahrungsbericht eines Nexus Integration Team Mitglieds

Qualitätssicherung leicht gemacht: Open Source Tools sinnvoll einsetzen und verzahnen

INTEGRATION TEST HELL ODER WIE INTEGRATIV SOLL ICH TESTEN?

Drei Methoden, ein Ziel: Testautomatisierung mit BDD, MBT und KDT im Vergleich

Continuous Delivery in der Realität eines Großunternehmens

Vorgehensmodell. Vorgehensmodell für die Prozessautomatisierung mit der Oracle BPM Suite 11g

Agile Softwareentwicklung im normativ regulierten Umfeld: Die Rolle der Qualitätssicherung für eine Zertifizierung

Im Testen nichts Neues. 9-Nov TAV

Testautomatisierung. Nr. 4 Januar Given When Test. Testen als Karriere. Entwickler entdecken UI-Testing. Markus Gärtner Seite 10

Der Business Analyst in der Rolle des agilen Product Owners

Prozesse optimieren und Kosten reduzieren in der Fertigungsindustrie. Modular, Individuell, Einfach

Coaching Agile Development Teams

SICHERES TESTEN MIT POLARION. Frank Ziesel

Agile Security Strategie

Welche Testautomatisierungen sind möglich und sinnvoll?

Atlassian Git Essentials Nahtlose Entwicklungsworkflows aus einer Hand

MDSD Einführung und Überblick


Anwenderdokumentation für die Industrie Test-Gegenstelle ELBRIDGE-Schnittstelle

Schlüsselwort- und datengetriebenes Testautomatisierungsverfahren einer RCP-Rahmenanwendung mit QF-Test. Hannover,

Projektantrag. 1 Projektbezeichnung. 1.1 Kurzform der Aufgabenstellung. 1.2 Ist-Analyse. AO-Beitragsportal

Web-Testen mit JUnit und HttpUnit. Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum

IBM Software. Rational Quality Manager Testing Discipline. Rational Team Concert Development Discipline

Continuous Delivery mit Orcas

Scriptbasierte Testautomatisierung. für Web-Anwendungen

Gute User Stories schreiben reicht nicht Requirements Engineering-Bedarf in agilen Projekten. Olga Boruszewski,

Transkript:

Automatisierte Akzeptanztests Olaf Eschenbruch 10.04.2018

Motivation Wo stehen wir im Cynefin Framework Iterative Feedback Systeme Realm of unknown unknowns Agile Methoden Quelle: A Leader s Framework for Decision Making, David Snowden & Mary Boone, HBR 2

Fehler aufgetreten Fehler aufgetreten Fehler aufgetreten Fehler aufgetreten Fehler aufgetreten Fixen Die Release Pipeline Schneller erfolgreicher Durchlauf schafft Mehrwert Development CI-Server Integration Environment Pre-Production Production Simple Unit Test Unit Test Integration Test Acceptance Test Neudurchlauf erforderlich Kosten pro Fehler Teststages

Schnelles Feedback, kurze Zyklen Möglichst viel, möglichst früh 4

Test von Anwendungen, nicht von Code

Test von Anwendungen, nicht von Code

Ein Vorgehen, viele Namen Behaviour Driven Development Acceptance Test Driven Development Specification by Example (Ausführbare Spezifikation)

Spezifikation sind meistens falsch!

Spezifikation verliert Wert über die Projektlaufzeit Spezifikation wird erstellt und beschreibt auch ein (meist erstes) Release, wird aber nicht konsequent weitergepflegt ständig am laufenden Produkt überprüft (Papier ist geduldig). Konsequenz Korrektheit der Software ist nicht überprüfbar, da nur beweisbar mittels Spezifikation Korrektheit der Spezifikation schwer überprüfbar Hoher Forschungsaufwand im Falle von unerwartetem Verhalten der Software 29

Beschreibungen sind interpretierbar Gibt es nur ein Feld für Adresse? Was genau wird ausgefüllt? Bezieht sich eine Pflichtprüfung auf alle Felder? Testkategorie Testfall Action Expected Kunde Kunde anlegen. In der Maske 'Kunde anlegen' müssen die Felder für Name, Vorname und Adresse gefüllt werden Der Kunde kann angelegt werden. Heißt müssen, hier ist ein Pflichtfeld? Wird das irgendwo geprüft? OK-Meldung beim Speichern? In einer anderen Maske kann eine Rechnung gestellt werden? 34

Wochen Test im Wasserfall Kunde Business Analyst Architekt Spezifikation Entwicklung QA/Test Software V 4.2.9 Testfallkatalog V 1.23 Feedback

Von der Idee zur Spezifikation

Von der Spezifikation zur ständigen Überprüfung

Given..When..Then..

Von Beispiel zur ausführbaren Spezifikation Testfall/Beispiel Testkategorie Testfall Action Expected Kunde Kunde anlegen In der Maske Neukunden' müssen die Felder für Name, Vorname und Adresse gefüllt werden Der Kunde kann angelegt werden. Ausführbare Spezifikation Anlegen eines Neukunden Given Page Should be Open Neukunden When Input Text Vorname Harry And Input Text Nachname Hirsch And Click Button Anlegen Then Saving Should succeed Befüllen der Addressfelder Given Page Should be Open Neukunden Page Should be open Neukunden Input Text Vorname Harry Input Text Nachname Hirsch Click Button Anlegen Saving Should Suceed Kontinuierliche Ausführung Starte jede Stunde / immer um Mitternacht, Teste IE, Firefox, Chrome Teste auf Umgebung Dev, Test, Preprod Führe nur folgende Testsuites aus Stelle Testergebnisse bereit Dev Test

Tage Automatisierte Akzeptanztests Domäne QA/Test Entwickler Feedback Beispiele / Ausführbare Spezifikation V 4.2.9 Software V 4.2.9

Von der fachlichen zur technischen Ebene 1 7

Feedback: Wird es gebraucht? Fachliche Qualität Was entscheidet den Erfolg einer Anwendung? Sprint-Reviews mit Kunden Story Mapping Acceptance Test Driven Development Sprint-Reviews Präsentation automatisierter Tests Präsentation der CI-Tests Modul- und QA-Test Test Driven Development Continuous Integration Continuous Delivery Technische Qualität Feedback: Funktioniert es?

Fallbeispiel: Komplexe Fachanwendung im Browser Automatisierung entlastet den Fachbereich Eindeutige Definition der Testfälle Gemeinsame Sicht auf die Erwartung Schnelles Feedback und ständige Überprüfung robotframework-reports and movie\robottest.avi robotframework-reports and movie\report.html

Fazit Korrektheit einer nicht-ausführbaren Spezifikation ist schwer beweisbar Continuous Communication ist notwendig für agiles Vorgehen Technische Exzellenz alleine genügt nicht! 41

Fazit Die ausführbare Spezifikation adressiert dies auf den Ebenen Technik Zusammenarbeit Dokumentation 42

Tools und Frameworks

Setup Szenario

Gibt es noch Fragen? Olaf Eschenbruch Senior Consultant olaf.eschenbruch@mt-ag.com Mobile: 0162 4310830 24