Agile BI in der Praxis Agiles Testen Andreas Ballenthin, Solution Architect Thomas Flecken, Senior Consultant OPITZ CONSULTING Deutschland GmbH DOAG Konferenz Nürnberg, 19.11.2013 Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 1 Agenda 1. Vorstellung OPITZ CONSULTING 2. Testgetriebene Entwicklung - TDD 3. Testvorbereitung 4. Deployment 5. Automatisierte Backendtests 6. Automatisierte Frontendtests 7. Testauswertung Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 2 1 Vorstellung OPITZ CONSULTING Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 3 Mission Märkte Wir entwickeln gemeinsam mit allen Branchen Lösungen, die dazu führen, dass sich diese Organisationen besser entwickeln als ihr Wettbewerb. Branchenübergreifend Über 600 Kunden Unsere Dienstleistung erfolgt partnerschaftlich und ist auf eine langjährige Zusammenarbeit angelegt. 29% Handel / Logistik / Dienstleistungen 29% Industrie / Versorger / Telekommunikation 42% Öffentliche Auftraggeber / Banken und Versicherungen / Vereine und Verbände Leistungsangebot Eckdaten Business IT Alignment Business Information Management Business Process Management Anwendungsentwicklung SOA und System-Integration IT-Infrastruktur-Management Gründung 1990 400 Mitarbeiter 8 Standorte Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 4 2 Test & Entwicklung Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 5 Anzahl Funktionalitäten Automatisierte Tests sind Pflicht! 50 45 40 35 30 25 20 15 10 5 0 Alte Funktionalitäten (Regressionstests) Neue Funktionalitäten S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 Sprint Aufwand für Regressionstests steigt stetig Testabdeckung darf nicht Zufall überlassen bleiben Testautomatisierung ist Pflicht! Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 6 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 7 Testgetriebene Entwicklung - TDD Entwicklung / Erweiterung des Testfalls erfolgreich Ausführung des Testfalls schlägt fehl Implementierung des Codes Fehler so früh wie möglich erkennen Auch: Fachliche Schärfung Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 8 Testfälle hängen am Taskboard! • . Einen Testfall übernehmen wird sicht- und erlebbar! Definition neuer und zu ändernder Testfälle im Planning II Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 9 Testgetriebene Entwicklung - TDD Erhöhte Testabdeckung Fachliche Schärfung Dokumentation Funktionsumfang des Codes Mögliche Fehlersituationen Grey-Box-Tests Kombination von Black-Box- und White-Box-Tests Software enthält ausschließlich getesteten Code Erfolgreiches Coding und erfolgreiche Testfälle sind Eingangsbedingung für das Testsystem. Exploratives Testen rundet das Vorgehen ab Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 10 Werkzeuge und Stilmittel – Testfallkategorien Kontextprüfberichte Datenabgleiche innerhalb einer Schicht Kennzahlentests Datenabgleiche zwischen den Schichten Performancetests Datenabgleiche End-to-End Anwenderberichte Einhaltung von Konventionen Metadatentests Prüfungen auf das Data Dictionary Inhalte von Fehlertabellen Bereitstellen synthetischer Daten Prüfung von Datenmigrationen Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 11 3 Testvorbereitung Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 12 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 13 Was testen wir heute? Welche Verarbeitungen? Es können nicht alle Verarbeitungen täglich laufen Wann? In welchen Umfang? Test NetzNetzabgleich abgleich Deployment 19:00 01:00 20:00 23:30 Call Data Records 03:00 02:00 Test Call Data Records Agile BI in der Praxis – Agiles Testen 03:15 06:30 Vertragsmanagement 08:00 Test Vertragsmanagement © OPITZ CONSULTING GmbH 2013 Seite 14 Wer testet denn heute? Es gibt Spezialisten und rechte Hände Die Testverantwortlichen werden im Planning II bestimmt. Testvorbereitungen A J J K F B T D Konfiguration Cron-Jobs Parameteränderungen Auswahl zu verarbeitender Files, Anonymisierung dieser Files Testnachbereitungen Testprotokolle sichten Arbeit vorbereiten und verteilen Die Testverantwortlichen übernehmen nicht die Gesamtverantwortung! Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 15 4 Deployment Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 16 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 17 Anforderungen an automatisierte Deployments Obligatorisch Deploymentergebnis muss richtig sein Vollständigkeit, Korrektheit, Nachvollziehbarkeit vollständig automatisiert keinerlei manuelle Eingriffe = innerhalb eines Testplans Fehlerausschließende Bestückung des Deployments Letztes erfolgreich getestetes Paket muss auslieferbar sein Optional Deltadeployment Ausschluss von Objekten Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 18 Automatisches Deployment – DB-Inhalte Neuentwicklungen und Modifikationen müssen auf dem Testsystem verfügbar sein Tabellen Views, Packages Parametern zur Steuerung der ETL-Prozesse setzen Berechtigungen OC Schemaverwaltung + Oracle-Bordmittel Basierend auf Ant und PL/SQL Stellt Sollzustand aus Istzustand des Zielsystems her Kann Datenmigrationen durchführen Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 19 Automatisiertes Deployment – DDL, DCL, Datenmigrationen Schemaverwaltung Objektskripte Schemaverwaltungssteuertabellen Entwicklung Test Abnahme Produktion DB-Schema (DWH_SA…) DB-Schema (DWH_SA…) DB-Schema (DWH_SA…) DB-Schema (DWH_SA…) Schemaverwaltungspackage Schemaverwaltungspackage Schemaverwaltungspackage Schemaverwaltungspackage deltarelevante Objektskripte Mindestens täglich Schemaverwaltung (Ant-Scripte, Subversion) Agile BI in der Praxis – Agiles Testen Mindestens pro Mindestens pro Release Release © OPITZ CONSULTING GmbH 2013 Seite 20 Automatisiertes Deployment – Informatica Entwicklung Informatica Client Informatica Repository Test Abnahme Produktion Informatica Repository Informatica Repository Informatica Repository pmprep ObjectImport pmprep ObjectImport pmprep ObjectImport Objektliste pmrep ExecuteQuery pmrep ObjectExport Subversion Mindestens täglich Agile BI in der Praxis – Agiles Testen Mindestens pro Mindestens pro Release Release © OPITZ CONSULTING GmbH 2013 Seite 21 Automatisiertes Deployment – OWB Workflowexport mit maximaler Abhängigkeitstiefe nicht ausführbarer „Deploymentworkflow“ OMBEXPORT MDL_FILE … FROM PROJECT 'DEPLOYMENT' COMPONENTS (PROCESS_FLOW_MODULE 'DEPLOYMENT') DEPENDEE_DEPTH MAX … Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 22 Automatisiertes Deployment – ODI Marker Group Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 23 Automatisiertes Deployment – ODI (II) Szenarien regenerieren mit OdiGenerateAllScen Generierung Export- und Importscript aus ODI-Repository Export startcmd OdiExportScen "-SCEN_NAME=PCK_MASTERDATA" "-SCEN_VERSION=-1" "-FILE_NAME=SCEN_PCK_MASTERDATA.xml" "-FORCE_OVERWRITE=YES" "-RECURSIVE_EXPORT=YES" ... Import startcmd OdiImportScen "-FILE_NAME=SCEN_PCK_MASTERDATA.xml" "-IMPORT_MODE=SYNONYM_INSERT_UPDATE" Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 24 Automatisiertes Deployment – Business Objects Entwicklung Business Objects Client Business Objects Repository Test Abnahme Produktion Business Objects Repository Business Objects Repository Business Objects Repository lcm.jar action=import lcm.jar action=import lcm.jar action=import Objektliste per Objektbeschreibung .properties lcm.jar action=export Mindestens täglich sFTP-Server Agile BI in der Praxis – Agiles Testen Mindestens pro Mindestens pro Release Release © OPITZ CONSULTING GmbH 2013 Seite 25 5 Automatisierte Backendtests Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 26 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 27 Werkzeuge und Stilmittel – Test-Suite Entwicklung Test ETL-Repository ETL-Entwickler-Clients Testserver ETL-Verarbeitung Deployment (DDL,ETL) ETL-Repository Testplan Testfall 1 Testfall N DWH-DB Testfallverarbeitung DWH-DB SVN DB-Entwickler-Clients Testfallentwicklung (TDD) Agile BI in der Praxis – Agiles Testen Protokollversand Protokollierung Baselinedumps DWH-DB-Host © OPITZ CONSULTING GmbH 2013 Seite 28 Werkzeugpalette einfach halten Betriebsystemunabhängig Oracle-Bordmittel: Data Pump, SQL*Plus für SQL-Scripte, SQL-Loader, Polling auf Statusänderungen (Warten) Dedizierter Testserver Linux Windows Shellscripte Batchfiles ssh / scp zur Kommunikation WinSCP-Scripts oder ssh / scp mit SSH-Server Cron Windows-Aufgabenplanung Maßgeblich ist, was dem Team hilft und was von jedem Teammitglied nutzbar ist Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 29 Werkzeuge und Stilmittel – Baselinedumps Baselinedumps exportieren Nach Produktivsetzung eines neuen Softwareoder Datenstandes Iterative Entwicklung TDD Baselinedumps importieren Nächtliche Testläufe Ziele: Produktivstellungssimulation Fallback Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 30 6 Automatisierte Frontendtests Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 31 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 32 Automatisierte Frontendtests Backend-Testverarbeitung erzeugt Datei-Semaphor als BOSystemereignis Nach Beendigung der Backend-Tests Möglichkeit für mehrere, zeitlich versetzte Datei-Semaphore Testlauf Gruppe 1 BODeployment 1:00-2:00 Testlauf Gruppe 3 8:00-8:20 FS 06:30 08:00 Backend-Test Vertragsmanagement Agile BI in der Praxis – Agiles Testen 8:40-9:00 FS FS 8:20-8:40 9:00 Testlauf Gruppe 2 Auslesen BO-Audit Erstellung Testprotokoll © OPITZ CONSULTING GmbH 2013 Seite 33 7 Testauswertung Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 34 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 35 Testauswertung Alle Testprotokolle sollen 08:30 Uhr vorliegen Beide Testverantwortliche Prüfen Verarbeitungen Sondieren die Testprotokolle und bringen die Ergebnisse ins Daily ein Starten ggf. Testpläne oder Testfälle neu Übernehmen nicht die Gesamtverantwortung! Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 36 Werkzeuge und Stilmittel – Testergebnisse Testprotokolltabelle zum Persistieren von Ergebnissen S für Success: Testfall konnte keinen Fehler feststellen E für Error: Testfall hat Abweichungen festgestellt R für Registered: Testfall wurde nicht ausgeführt oder lief syntaktisch falsch 01010_DDL 01020_DDL 01030_DDL 01060_DDL S E S S 11.03.2013 07:47:46 11.03.2013 07:47:55 11.03.2013 07:48:02 11.03.2013 07:48:09 Agile BI in der Praxis – Agiles Testen 0 fehlende Kommentare 1 fehlende Kommentare 0 Fehler gefunden 0 nicht aktuelle Matviews © OPITZ CONSULTING GmbH 2013 Seite 37 Der tägliche Testzyklus - Zusammenfassung TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 38 Kontakt Andreas Ballenthin OPITZ CONSULTING Deutschland GmbH Kirchstr. 6 | 51647 Gummersbach Tel. +49 (2261) 60 01-0 [email protected] Thomas Flecken OPITZ CONSULTING Deutschland GmbH Kirchstr. 6 | 51647 Gummersbach Tel. +49 (2261) 60 01-0 [email protected] youtube.com/opitzconsulting @OC_WIRE slideshare.net/opitzconsulting xing.com/net/opitzconsulting Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2013 Seite 39