Deutschsprachige SAP® Anwendergruppe
Test-getriebene Entwicklung in ABAP –
Das Entwicklungsmodell der Zukunft
Christian Dr...
Inhaltsverzeichnis
 Agile Softwareentwicklung Seite 3
 Test-getriebene Entwicklung Seite 4
> Grundlagen
> Tools im SAP-U...
Agile Softwareentwicklung
 Agile Prinzipien
 Agile Prozesse
 Agile Methoden
Refaktur-
ierung
Scrum
Continious
Integrati...
Test-getriebene Entwicklung – Grundlagen
 Vorgehen
1. Test implementieren
2. Anwendungslogik implementieren
3. Refakturie...
Test-getriebene Entwicklung – Tools im SAP-Umfeld
 ABAP Unit
> xUnit-Implementierung in ABAP
test_method1( )
test_method2...
Test-getriebene Entwicklung in der Praxis
 Eigenständige Entwicklungen vs. Erweiterungen des SAP Standards
> Sehr gut bei...
Der größte Feind des Unit Tests
7
Unit Test
Applikations
Code
Abhängige
Komponenten
Konfiguration
User Interface
Customizi...
Der größte Feind des Unit Tests
8
Unit Test
Applikations
Code
Abhängige
Komponenten
Konfiguration
User Interface
Customizi...
Beispiel: Währungsumrechnung
9
Währungs-
kurs
Applikation
Währungs-
umrechnung
Unit Test Mock
Code Beispiel (Applikations Code)
10
„Dependency Injection“ wird
verwendet um Abhängigkeiten
zu kontrollieren
Abhängigkeit...
Code Beispiel (Test Code)
11
Code Beispiel (Test Code mit Mock)
12
SAP Test Double
Framework
Was macht man in
Legacy Code ?
13
Applikation Code Test Code
Code Beispiel (Legacy Code)
14
Applikation Code Test Code
Code Ersetzung mittels Test-Seams
15
Fragen?
16
Referenzen
 Getting Started with ABAP Testing and Troubleshooting - http://scn.sap.com/docs/DOC-24152
 Einführung in den...
Die vorliegende Präsentation ist urheberrechtlich geschützt (Copyright). Alle Rechte liegen, soweit nicht ausdrücklich and...
Nächste SlideShare
Wird geladen in …5
×

Test-getriebene Entwicklung in ABAP – Das Entwicklungsmodell der Zukunft

1.972 Aufrufe

Veröffentlicht am

Test-getriebene Entwicklung in ABAP – Das Entwicklungsmodell der Zukunft

Veröffentlicht in: Software
0 Kommentare
4 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.972
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
64
Aktionen
Geteilt
0
Downloads
12
Kommentare
0
Gefällt mir
4
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie
  • Softwarearchitektur
    Seperation of Concerns (One Responsibility Principle); z.B. Trennung von Datenzugriff und Verarbeitungslogik  Datenzugriffsklasse
    KISS-Prinzip
  • Test-getriebene Entwicklung in ABAP – Das Entwicklungsmodell der Zukunft

    1. 1. Deutschsprachige SAP® Anwendergruppe Test-getriebene Entwicklung in ABAP – Das Entwicklungsmodell der Zukunft Christian Drumm, FACTUR Billing Solutions GmbH Thomas Fiedler, SAP SE
    2. 2. Inhaltsverzeichnis  Agile Softwareentwicklung Seite 3  Test-getriebene Entwicklung Seite 4 > Grundlagen > Tools im SAP-Umfeld  Test-getriebene Entwicklung in der Praxis Seite 6  Mock Objekte Seite 7 > Einführung > Beispiel > Lab-Preview Test-Seams  Referenzen / Links Seite 16
    3. 3. Agile Softwareentwicklung  Agile Prinzipien  Agile Prozesse  Agile Methoden Refaktur- ierung Scrum Continious Integration XP… Kanban Paar- programm- ierung Unit Tests
    4. 4. Test-getriebene Entwicklung – Grundlagen  Vorgehen 1. Test implementieren 2. Anwendungslogik implementieren 3. Refakturierung  Vorteile > Bessere Softwarearchitektur > Bessere Softwarequalität > Bessere Wartbarkeit und Erweiterbarkeit > Tests als Dokumentation 4 Rot GrünRefactor
    5. 5. Test-getriebene Entwicklung – Tools im SAP-Umfeld  ABAP Unit > xUnit-Implementierung in ABAP test_method1( ) test_method2( ) > setup( )  test_method3( )  teardown( ) test_method4( ) test_methodN( )  Integration in SE80 und ABAP in Eclipse > Ausführung von Tests auf Klassen oder Paketebene > Abdeckungsanalyse  Integration in ABAP Test Cockpit 5
    6. 6. Test-getriebene Entwicklung in der Praxis  Eigenständige Entwicklungen vs. Erweiterungen des SAP Standards > Sehr gut bei eigenständigen Entwicklungen umsetzbar > Für Erweiterungen des SAP Standards über z.B. BAdIs ggf. schwierig  Existierenden Code vs. neue Entwicklungen > Test-getriebene Entwicklung nur bei neuen Entwicklung umsetzbar > Nachträgliche Entwicklung von Test für existierenden Code  Problem: ggf. größer Änderungen der Softwarearchitektur notwendig  Möglichkeit zur Test-getriebene Entwicklung ist abhängig von den verwendeten Frameworks / Applikationen > BOL-Layer im SAP CRM eignet sich z.B. sehr gut > Test-getriebene Entwicklung z.B. im Umfeld der Geschäftspartner-BAPIs nahezu unmöglich 6
    7. 7. Der größte Feind des Unit Tests 7 Unit Test Applikations Code Abhängige Komponenten Konfiguration User Interface Customizing Datenbank Remote Call Unbekannte Funktion
    8. 8. Der größte Feind des Unit Tests 8 Unit Test Applikations Code Abhängige Komponenten Konfiguration User Interface Customizing Datenbank Remote Call Unbekannte Funktion Mocking
    9. 9. Beispiel: Währungsumrechnung 9 Währungs- kurs Applikation Währungs- umrechnung Unit Test Mock
    10. 10. Code Beispiel (Applikations Code) 10 „Dependency Injection“ wird verwendet um Abhängigkeiten zu kontrollieren Abhängigkeiten sind mittels Interfaces gekapselt
    11. 11. Code Beispiel (Test Code) 11
    12. 12. Code Beispiel (Test Code mit Mock) 12 SAP Test Double Framework
    13. 13. Was macht man in Legacy Code ? 13
    14. 14. Applikation Code Test Code Code Beispiel (Legacy Code) 14
    15. 15. Applikation Code Test Code Code Ersetzung mittels Test-Seams 15
    16. 16. Fragen? 16
    17. 17. Referenzen  Getting Started with ABAP Testing and Troubleshooting - http://scn.sap.com/docs/DOC-24152  Einführung in den SAP TestDouble Framework - http://scn.sap.com/docs/DOC-61154  ABAP in Eclipse im SCN - http://scn.sap.com/community/abap/eclipse 17
    18. 18. Die vorliegende Präsentation ist urheberrechtlich geschützt (Copyright). Alle Rechte liegen, soweit nicht ausdrücklich anders gekennzeichnet, bei der Deutschsprachigen SAP-Anwendergruppe e. V.. Jedwede unerlaubte Verwendung ist nicht gestattet. Dies gilt insbesondere für die Vervielfältigung, Verbreitung, Übersetzung oder die Verwendung in elektronischen Systemen / digitalen Medien.  Deutschsprachige SAP® Anwendergruppe e.V. Altrottstraße 34a D-69190 Walldorf  Tel.: +49-(0)6227-358 09-58 Fax: +49-(0)6227-358 09-59 E-Mail: info@dsag.de Web: www.dsag.de  DSAG in Österreich Tel.: +43-(0)1-310 13 76 E-Mail: info@dsag.at Web: www.dsag.at  DSAG in der Schweiz Tel.: +41-(0)31-311 10 03 E-Mail: info@dsag-ev.ch Web: www.dsag-ev.ch © DSAG e.V. Kontakt DSAG

    ×