Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 1
Test-Driven DevOps
Michael Jerger
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 2
Agenda
Vorstellung
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 3
Agenda
Vorstellung
Tests für Developer
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 4
Agenda
Vorstellung
Tests für Developer
Herausforderung Operations
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 5
Agenda
Vorstellung
Tests für Developer
Herausforderung Operations
Ansatzpunkte für agile DevOps
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 6
Agenda
Vorstellung
Tests für Developer
Herausforderung Operations
Ansatzpunkte für agile DevOps
Testen mit dda-serverspec
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 7
Agenda
Vorstellung
Tests für Developer
Herausforderung Operations
Ansatzpunkte für agile DevOps
Testen mit dda-serverspec
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 8
meissa GmbH?
Fokus: DevOps, Maintainer von dda-pallet
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 9
meissa GmbH?
Fokus: DevOps, Maintainer von dda-pallet
Sitz Reutlingen, SW-Entwicklung Java & Clojure, Uni Tübingen
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 10
meissa GmbH?
Fokus: DevOps, Maintainer von dda-pallet
Sitz Reutlingen, SW-Entwicklung Java & Clojure, Uni Tübingen
Arbeiten dezentral, d.h. 90% Remote-Arbeit
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 11
meissa GmbH?
Fokus: DevOps, Maintainer von dda-pallet
Sitz Reutlingen, SW-Entwicklung Java & Clojure, Uni Tübingen
Arbeiten dezentral, d.h. 90% Remote-Arbeit
Nachhaltige Kooperation
https://www.meissa-gmbh.de
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 12
Was ist dda-pallet?
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 13
Was ist dda-pallet?
Funktionales DevOps System
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 14
Was ist dda-pallet?
Funktionales DevOps System
Test Driven
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 15
Was ist dda-pallet?
Funktionales DevOps System
Test Driven
Schnörkellos und direkt
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 16
Was ist dda-pallet?
Funktionales DevOps System
Test Driven
Schnörkellos und direkt
Linux-servers: functional – bash.
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 17
Was ist dda-pallet?
Funktionales DevOps System
Test Driven
Schnörkellos und direkt
Linux-servers: functional – bash.
Operational Services: functional – api.
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 18
Was ist dda-pallet?
Funktionales DevOps System
Test Driven
Schnörkellos und direkt
Linux-servers: functional – bash.
Operational Services: functional – api.
Adressiert Provisionierung, OpenSource, cloud zentriert, ...
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 19
… pallet ...
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 20
… pallet ...
... ist ein clojure DevOps Framework von Hugo Duncan.
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 21
… pallet ...
... ist ein clojure DevOps Framework von Hugo Duncan.
… wir komponieren pallet zu einem DevOps System.
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 22
… dda ...
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 23
… dda ...DomainDrivenArchitecture DDD Prinzipien in der funktionalen Welt:
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 24
… dda ...DomainDrivenArchitecture DDD Prinzipien in der funktionalen Welt:
„Separate Domain from Infrastructure“
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 25
… dda ...DomainDrivenArchitecture DDD Prinzipien in der funktionalen Welt:
„Separate Domain from Infrastructure“
„enable Domain Language“
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 26
… dda ...DomainDrivenArchitecture DDD Prinzipien in der funktionalen Welt:
„Separate Domain from Infrastructure“
„enable Domain Language“
Bash & cloud Abstraktion = Infrastruktur.
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 27
… dda ...DomainDrivenArchitecture DDD Prinzipien in der funktionalen Welt:
„Separate Domain from Infrastructure“
„enable Domain Language“
Bash & cloud Abstraktion = Infrastruktur.
Domain Language bestehend aus
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 28
… dda ...DomainDrivenArchitecture DDD Prinzipien in der funktionalen Welt:
„Separate Domain from Infrastructure“
„enable Domain Language“
Bash & cloud Abstraktion = Infrastruktur.
Domain Language bestehend aus
Architektur Konventionen
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 29
… dda ...DomainDrivenArchitecture DDD Prinzipien in der funktionalen Welt:
„Separate Domain from Infrastructure“
„enable Domain Language“
Bash & cloud Abstraktion = Infrastruktur.
Domain Language bestehend aus
Architektur Konventionen
Operational Services
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 30
… dda ...DomainDrivenArchitecture DDD Prinzipien in der funktionalen Welt:
„Separate Domain from Infrastructure“
„enable Domain Language“
Bash & cloud Abstraktion = Infrastruktur.
Domain Language bestehend aus
Architektur Konventionen
Operational Services
Applikations Stacks
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 31
Agenda
Vorstellung
Testing für Developer
Herausforderung Operations
Ansatzpunkte für agile DevOps
Testen mit dda-serverspec
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 32
Testarten für Dev
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 33
Testarten für Dev
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 34
Testarten für Dev
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 35
Testarten für Dev
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 36
Testarten für Dev
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 37
Testarten für Dev
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 38
Agenda
Vorstellung
Tests in der Softwareentwicklung
Herausforderung Operations
Ansatzpunkte für agile DevOps
Testen mit dda-serverspec
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 39
naiv?
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 40
naiv?
Naiv landen wir komplett inder Kategorie
Infrastruktur Integration!
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 41
naiv?
Naiv landen wir komplett inder Kategorie
Infrastruktur Integration!
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 42
Ops = viel State
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 43
Ops = viel State
Installierte Betriebssystem
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 44
Ops = viel State
Installierte Betriebssystem
System-Konfguration
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 45
Ops = viel State
Installierte Betriebssystem
System-Konfguration
Update-Zustand
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 46
Ops = viel State
Installierte Betriebssystem
System-Konfguration
Update-Zustand
Installierte Applikationen und deren Zustand
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 47
Ops = viel State
Installierte Betriebssystem
System-Konfguration
Update-Zustand
Installierte Applikationen und deren Zustand
Logfles und deren Nutzung
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 48
State – was tun?
Immutable Installation
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 49
State – was tun?
Immutable Installation
Teile klein machenDockerhost
ZabbixServer
Maria DB
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 50
State – was tun?
Immutable Installation
Teile klein machen
Ausnahmen
Dockerhost
ZabbixServer
Maria DB
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 51
State – was tun?
Immutable Installation
Teile klein machen
Ausnahmen
Manchmalist Veränderung nötig: facts
Dockerhost
ZabbixServer
Maria DB
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 52
State – was tun?
Immutable Installation
Teile klein machen
Ausnahmen
Manchmalist Veränderung nötig: facts
Dockerhost
ZabbixServer
Maria DB
(defn collect-netstat-fact [] (collect-fact fact-id-netstat '("netstat" "-tulpen") :transform-fn parse-netstat))
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 53
Ops = Heterogene Technik
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 54
Ops = Heterogene Technik
AWS, Google-Cloud, Azure, OpenStack, DigitalOcean, ...
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 55
Ops = Heterogene Technik
AWS, Google-Cloud, Azure, OpenStack, DigitalOcean, ...
Unix / Windows / Mac / Android / IOs
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 56
Ops = Heterogene Technik
AWS, Google-Cloud, Azure, OpenStack, DigitalOcean, ...
Unix / Windows / Mac / Android / IOs
*sh / Powershell
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 57
Ops = Heterogene Technik
AWS, Google-Cloud, Azure, OpenStack, DigitalOcean, ...
Unix / Windows / Mac / Android / IOs
*sh / Powershell
Perl / PHP / C / *Java / Python / Ruby / GO / Lisp / JavaScript
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 58
Ops = Heterogene Technik
AWS, Google-Cloud, Azure, OpenStack, DigitalOcean, ...
Unix / Windows / Mac / Android / IOs
*sh / Powershell
Perl / PHP / C / *Java / Python / Ruby / GO / Lisp / JavaScript
make / ant / mvn / gradle / lein / boot / npm / yarn / mach
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 59
Heterogenität – was tun?
Heterogenität kapseln , (dünner) Anti Corruption Layer
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 60
Heterogenität – was tun?
Heterogenität kapseln , (dünner) Anti Corruption Layer
Data-API
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 61
Heterogenität – was tun?
Heterogenität kapseln , (dünner) Anti Corruption Layer
Data-API
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 62
Heterogenität – was tun?
Heterogenität kapseln , (dünner) Anti Corruption Layer
Data-API
Bash-Interaktion
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 63
Heterogenität – was tun?
Ort für Unternehmens-Architektur:
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 64
Heterogenität – was tun?
Ort für Unternehmens-Architektur:
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 65
Heterogenität – was tun?
Ort für Unternehmens-Architektur:
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 66
Heterogenität – was tun?
Ort für Unternehmens-Architektur:
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 67
Ops = Infrastructure
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 68
Ops = Infrastructure
Netzwerk, Firewall, Routing, Cloud
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 69
Ops = Infrastructure
Netzwerk, Firewall, Routing, Cloud
Integration in Ops Services
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 70
Ops = Infrastructure
Netzwerk, Firewall, Routing, Cloud
Integration in Ops Services
Repositories: Linux-Packages, Software-Artefakte, Web-Downloads
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 71
Ops = Infrastructure
Netzwerk, Firewall, Routing, Cloud
Integration in Ops Services
Repositories: Linux-Packages, Software-Artefakte, Web-Downloads
Security: Krypto-Keys & Credentials
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 72
Infrastructure – was tun?
Infrastruktur Artefakte
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 73
Infrastructure – was tun?
Infrastruktur Artefaktecontinous & getestete
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 74
Infrastructure – was tun?
Infrastruktur Artefaktecontinous & getestete
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 75
Agenda
Vorstellung
Tests in der Softwareentwicklung
Herausforderung Operations
Ansatzpunkte für agile DevOps
Testen mit dda-serverspec
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 76
Unittest f. Execution Plan
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 77
Unittest f. Execution Plan
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 78
Unittest f. Domain → Infra
Einfache DatentransformationDomain-API (Conventions):
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 79
Integration Test f. Images (1)
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 80
Integration Test f. Images (1)
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 81
Integration Test f. Images (2)
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 82
Integration Test f. Images (2)
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 83
dda-serverspec / rspec / goss
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 84
dda-serverspec / rspec / goss
{:netstat {:apache2 {:port "80"}}
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 85
dda-serverspec / rspec / goss
describe port(80) do it { should be_listening }end
{:netstat {:apache2 {:port "80"}}
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 86
dda-serverspec / rspec / goss
describe port(80) do it { should be_listening }end
{:netstat {:apache2 {:port "80"}}
port: tcp:80: listening: true
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 87
Whitebox fully on target
Whitebox, controll & execute on target
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 88
Integrationstest
Whitebox controlled remote, executed on target
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 89
Integrationstest
Whitebox collect facts on target
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 90
Integrationstest
Blackbox
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 91
Agenda
Vorstellung
Tests in der Softwareentwicklung
Herausforderung Operations
Ansatzpunkte für agile DevOps
Testen mit dda-serverspec
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 92
Bsp. Docker-Image
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 93
Bsp. Docker-Image
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 94
Bsp. Docker-Image
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 95
Geerbter Container
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 96
Geerbter Container
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 97
Geerbter Container
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 98
Build Image & Test
https://asciinema.org/a/189352
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 99
Bsp Packer Image
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 100
Bsp Packer Image
Packer.json - Provisioners
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 101
Bsp Packer Image
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 102
Bsp Packer Image
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 103
Install & Test in one
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 104
Blackbox für Netzwerktest
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 105
Sonden instantiieren
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 106
Tests defnieren
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 107
Tests defnieren
Die Testspezifkation (eine f. jedes Netz)
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 108
Tests defnieren
Die Testspezifkation (eine f. jedes Netz)
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 109
Tests defnieren
Die Testspezifkation (eine f. jedes Netz)
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 110
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 111
Netzwerktest remote
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 112
Fazit
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 113
Fazit
Respekt vor den Unterschieden
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 114
Fazit
Respekt vor den Unterschieden
Von der Softwareentwicklung lernen
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 115
Fazit
Respekt vor den Unterschieden
Von der Softwareentwicklung lernen
Efzientes DevOps Testen möglichx
Michael Jergerwww.DomainDrivenArchitecture.org
TestDrivenDevOps_1_0-expanded04/07/18 / Seite 116
Kontakt
Kontakt - meetup
https://www.meetup.com/de-DE/dda-pallet-DevOps-Hacking-with-Clojure
Ausprobieren & Unterstüzung - GitHub
https://github.com/DomainDrivenArchitecture/dda-serverspec-crate
Informiert bleiben - Blog:
https://DomainDrivenArchitecture.org