Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENF
HAMBURG KOPENHAGEN LAUSANNE MÜNCHEN STUTTGART WIEN ZÜRICH
I...
Agenda
“if Jenkins Oraclet“2 09.09.2016
1. Continuous Integration (CI)
2. Unit-Testing
3. CI mit Jenkins
4. Unit-Tests mit...
"if Jenkins Oraclet“3 09.09.2016
Continuous Integration
Continuous Integration
"if Jenkins Oraclet“4 09.09.2016
Continuous Integration hat das Ziel, die Qualität der Software übe...
Continuous Integration
"if Jenkins Oraclet“5 09.09.2016
Warum sollte man überhaupt Continuous Integration nutzen?
„Immedia...
Continuous Integration
"if Jenkins Oraclet“6 09.09.2016
Developer
Version Control System
z.B. SubVersion
ci Server
z.B. Je...
"if Jenkins Oraclet“7 09.09.2016
Unit-Testing
Unit-Testing
"if Jenkins Oraclet“8 09.09.2016
PL/SQL Unit-Testing
Can Be Fun!?
With a little help from
Unit-Testing
"if Jenkins Oraclet“9 09.09.2016
Generelle Frage: Wozu Unit Tests?
Konsequent stabile Software entwickeln
Ins...
Unit-Testing
"if Jenkins Oraclet“10 09.09.2016
Übersicht der Frameworks zum Unit-Testing von PL/SQL Programmen.
Name Licen...
Unit-Testing
"if Jenkins Oraclet“11 09.09.2016
Übersicht der Frameworks zum Unit-Testing von PL/SQL Programmen.
Name Licen...
Unit-Testing
"if Jenkins Oraclet“12 09.09.2016
Warum Unit-Tests mit dem SQL-Developer?
Framework integriert im SQL-Develop...
Unit-Testing
"if Jenkins Oraclet“13 09.09.2016
sdcli64 Commandline Tool
Start der Unit-Test mittels Commandline
Unit-Testing
"if Jenkins Oraclet“14 09.09.2016
"if Jenkins Oraclet“15 09.09.2016
CI mit Jenkins
CI mit Jenkins
"if Jenkins Oraclet“16 09.09.2016
Jenkins ist ein erweiterbares, webbasiertes Software-System für die konti...
CI mit Jenkins
"if Jenkins Oraclet“17 09.09.2016
Jenkins ist ein erweiterbares, webbasiertes Software-System zur kontinuie...
CI mit Jenkins
"if Jenkins Oraclet“18 09.09.2016
Historie
Artefakt
e
Testergebnisse
Trends
"if Jenkins Oraclet“19 09.09.2016
Unit-Tests mit Jenkins
Unit-Tests mit Jenkins
"if Jenkins Oraclet“20 09.09.2016
Änderung im Repository
Manuelles Auslösen
Zeitlich gesteuerter Bu...
Unit-Test mit Jenkins
"if Jenkins Oraclet“21 09.09.2016
Inhalte aus SVN / TFS /… ziehen
Auslöser Check Out Build
Post-Buil...
Unit-Test mit Jenkins
"if Jenkins Oraclet“22 09.09.2016
Unit-Test starten
Shellscript starten
…
Auslöser Check Out Build
P...
Unit-Test mit Jenkins
"if Jenkins Oraclet“23 09.09.2016
Auslöser Check Out Build
Post-Build
Aktionen
E-Mail(s) versenden
J...
Unit-Test mit Jenkins
"if Jenkins Oraclet“24 09.09.2016
"if Jenkins Oraclet“25 09.09.2016
Fazit
Fazit
"if Jenkins Oraclet“26 09.09.2016
Welche Vorteile ergeben sich aus dem Vorgehen?
Höhere Transparenz und Sichtbarkeit...
Fazit
"if Jenkins Oraclet“27 09.09.2016
Welche Vorteile ergeben sich aus dem Vorgehen?
Sehr frühzeitiges entdecken der Feh...
Fazit
"if Jenkins Oraclet“28 09.09.2016
Welche Nachteil ergeben sich aus de Vorgehen?
Ein weiteres System das gepflegt wer...
"if Jenkins Oraclet“29 09.09.2016
https://jaxenter.de/continuous-delivery-jenkins-21451
Jenkins
Jenkins Wikipedia
Docker I...
Martin Ritschel
Senior Consultant
Tel. +49 162 273 39 34
Martin.ritschel@trivadis.com
09.09.2016 "if Jenkins Oraclet“30
Session Feedback – now
TechEvent September 201631 09.09.2016
Please use the Trivadis Events Mobile App to give session fee...
Nächste SlideShare
Wird geladen in …5
×

Trivadis TechEvent 2016 A few thoughts on the subject Continuous integration and PLSQL in the Back-End development by Martin Ritschel

223 Aufrufe

Veröffentlicht am

Continuous Integration (CI) is existing in the frontend development for quite some time and is part of the daily standard. As part of the PL/SQL development CI is only slightly developed as for many developers it shows up being expensive and complicated. Using Unit-Test errors are detected in an early stage and speeds up the development of error-free software. My presentation will demonstrate the advantages of the continuous quality assurance approach as well as introducing a method being implemented at VW FS for automating unit testing and quality assurance

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Trivadis TechEvent 2016 A few thoughts on the subject Continuous integration and PLSQL in the Back-End development by Martin Ritschel

  1. 1. BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENF HAMBURG KOPENHAGEN LAUSANNE MÜNCHEN STUTTGART WIEN ZÜRICH If Jenkins Oraclet A few thoughts on the subject "Continuous integration (CI) and PL/SQL in the Back-End development" or "if Jenkins Oraclet“ Martin Ritschel Senior Consultant
  2. 2. Agenda “if Jenkins Oraclet“2 09.09.2016 1. Continuous Integration (CI) 2. Unit-Testing 3. CI mit Jenkins 4. Unit-Tests mit Jenkins 5. Fazit
  3. 3. "if Jenkins Oraclet“3 09.09.2016 Continuous Integration
  4. 4. Continuous Integration "if Jenkins Oraclet“4 09.09.2016 Continuous Integration hat das Ziel, die Qualität der Software über permanente Integration ihrer einzelnen Bestandteile zu steigern. Statt die Software nur in sehr großen Zeitabständen kurz vor der Auslieferung zu erstellen, wird sie in kleinen Zyklen immer wieder erstellt und getestet. Integrations-Probleme werden laufend entdeckt und behoben (gefixt) Frühe Warnungen bei nicht zusammenpassenden Bestandteilen Unit-Tests dienen zur schnelleren Erkennung und Beseitigung von Fehlern Die sofortige Reaktion des Systems auf das Einchecken eines fehlerhaften oder unvollständigen Codes
  5. 5. Continuous Integration "if Jenkins Oraclet“5 09.09.2016 Warum sollte man überhaupt Continuous Integration nutzen? „Immediate Feedback“ Diese Methode ermöglicht, dem Team und dabei insbesondere dem Entwickler, schnellstmöglich („Immediate“) Feedback über die Qualität seiner Software nach einer Änderung zu geben. Dazu ist es notwendig, die Änderungen jedes Einzelnen auch so rasch wie möglich mit dem Gesamtstand zu integrieren und integriert zu testen.
  6. 6. Continuous Integration "if Jenkins Oraclet“6 09.09.2016 Developer Version Control System z.B. SubVersion ci Server z.B. Jenkins Build Service check out Developer Developer Start: § build § unit-tests § deployment • team leads • testers • managment • etc… notify check in
  7. 7. "if Jenkins Oraclet“7 09.09.2016 Unit-Testing
  8. 8. Unit-Testing "if Jenkins Oraclet“8 09.09.2016 PL/SQL Unit-Testing Can Be Fun!? With a little help from
  9. 9. Unit-Testing "if Jenkins Oraclet“9 09.09.2016 Generelle Frage: Wozu Unit Tests? Konsequent stabile Software entwickeln Instabilitäten während Refactoring erkennen Nicht dokumentierte Seiteneffekte finden Frühzeitig Fehler finden Besseres Design
  10. 10. Unit-Testing "if Jenkins Oraclet“10 09.09.2016 Übersicht der Frameworks zum Unit-Testing von PL/SQL Programmen. Name Licence Test style utPLSQL GPL Stored Procedures Quest code tester proprietary declarative PL/Unit proprietary PL/SQL packages PLUTO – PL/SQL Unit Testing for Oracle Artistic License/GPL PL/SQL classes ruby-plsql-spec free Ruby DSL DBFit GPL functional specifikation DBUnit Lesser GPL Java/XML SQLDeveloper proprietary Wizards, SQL
  11. 11. Unit-Testing "if Jenkins Oraclet“11 09.09.2016 Übersicht der Frameworks zum Unit-Testing von PL/SQL Programmen. Name Licence Test style utPLSQL GPL Stored Procedures Quest code tester proprietary declarative PL/Unit proprietary PL/SQL packages PLUTO – PL/SQL Unit Testing for Oracle Artistic License/GPL PL/SQL classes ruby-plsql-spec free Ruby DSL DBFit GPL functional specifikation DBUnit Lesser GPL Java/XML SQLDeveloper proprietary Wizards, SQL
  12. 12. Unit-Testing "if Jenkins Oraclet“12 09.09.2016 Warum Unit-Tests mit dem SQL-Developer? Framework integriert im SQL-Developer Proprietäres Datenbank Repository Eigenes Datenbank Schema Wizards zum Erstellen der Tests Nutzung von Libraries Starten der Unit-Tests über die Konsole Import/Export Funktionalität
  13. 13. Unit-Testing "if Jenkins Oraclet“13 09.09.2016
  14. 14. sdcli64 Commandline Tool Start der Unit-Test mittels Commandline Unit-Testing "if Jenkins Oraclet“14 09.09.2016
  15. 15. "if Jenkins Oraclet“15 09.09.2016 CI mit Jenkins
  16. 16. CI mit Jenkins "if Jenkins Oraclet“16 09.09.2016 Jenkins ist ein erweiterbares, webbasiertes Software-System für die kontinuierlichen Integration von Komponenten zu einem Anwendungsprogramm. Freier und offener CI-Server Läuft in beliebigen Java Servlet-Containern Wird mit Servlet-Middleware Winstone ausgeliefert Multi-Plattform / Multi-Technologie – Java, PHP, Groovy, Ruby, … Vernetzte CI-Server um Tests zu parallelisieren Vielseitige Integrationsmöglichkeiten
  17. 17. CI mit Jenkins "if Jenkins Oraclet“17 09.09.2016 Jenkins ist ein erweiterbares, webbasiertes Software-System zur kontinuierlichen Integration von Komponenten zu einem Anwendungsprogramm. Durch Plugins beliebig erweiterbar REST-basierte Programmierschnittstelle Unterstützung verschiedener Build-Tools – Apache Ant, Maven oder Gradle ... Anbindung an Versionsverwaltungssysteme wie CVS, TFS oder Subversion
  18. 18. CI mit Jenkins "if Jenkins Oraclet“18 09.09.2016 Historie Artefakt e Testergebnisse Trends
  19. 19. "if Jenkins Oraclet“19 09.09.2016 Unit-Tests mit Jenkins
  20. 20. Unit-Tests mit Jenkins "if Jenkins Oraclet“20 09.09.2016 Änderung im Repository Manuelles Auslösen Zeitlich gesteuerter Build Auslöser Check Out Build Post-Build Aktionen
  21. 21. Unit-Test mit Jenkins "if Jenkins Oraclet“21 09.09.2016 Inhalte aus SVN / TFS /… ziehen Auslöser Check Out Build Post-Build Aktionen
  22. 22. Unit-Test mit Jenkins "if Jenkins Oraclet“22 09.09.2016 Unit-Test starten Shellscript starten … Auslöser Check Out Build Post-Build Aktionen
  23. 23. Unit-Test mit Jenkins "if Jenkins Oraclet“23 09.09.2016 Auslöser Check Out Build Post-Build Aktionen E-Mail(s) versenden JUnit Testergebnisse anzeigen …
  24. 24. Unit-Test mit Jenkins "if Jenkins Oraclet“24 09.09.2016
  25. 25. "if Jenkins Oraclet“25 09.09.2016 Fazit
  26. 26. Fazit "if Jenkins Oraclet“26 09.09.2016 Welche Vorteile ergeben sich aus dem Vorgehen? Höhere Transparenz und Sichtbarkeit Automatisches Ausführen der Unit-Tests Höhere Akzeptanz der Unit-Tests
  27. 27. Fazit "if Jenkins Oraclet“27 09.09.2016 Welche Vorteile ergeben sich aus dem Vorgehen? Sehr frühzeitiges entdecken der Fehler Integrations-Probleme werden nicht erst kurz vor einem Meilenstein gefunden Dokumentation Leichteres Refactoring Höhere Qualität der Software
  28. 28. Fazit "if Jenkins Oraclet“28 09.09.2016 Welche Nachteil ergeben sich aus de Vorgehen? Ein weiteres System das gepflegt werden muss In der Anfangsphase ein höherer Aufwand Zusätzliche Methoden für Unit-Tests Mehraufwand zur Sensibilisierung warum Unit-Tests notwendig sind
  29. 29. "if Jenkins Oraclet“29 09.09.2016 https://jaxenter.de/continuous-delivery-jenkins-21451 Jenkins Jenkins Wikipedia Docker Images inkl Oracle 12c und Jenkins
  30. 30. Martin Ritschel Senior Consultant Tel. +49 162 273 39 34 Martin.ritschel@trivadis.com 09.09.2016 "if Jenkins Oraclet“30
  31. 31. Session Feedback – now TechEvent September 201631 09.09.2016 Please use the Trivadis Events Mobile App to give session feedback Use "My schedule" if you registered for this session Otherwise use "Agenda" and the search function If the mobile App does not work (or if you have a Windows Phone) use your Mobile Browser – URL: http://trivadis.quickmobileplatform.eu/ – Username: <your_loginname> (like svv) – Password: sent by mail...

×