http://www.opitz-consulting.com
Oft erweisen sich Unittests gerade dann als problematisch, wenn bestehender Code geändert werden soll. Kleine Änderungen am produktiven Code erfordern nicht selten wesentlich umfangreichere Änderungen in den Unittests.
In diesem Vortrag mit anschließendem LiveCoding bei der OOP 2017 in München erklärte unser Experte Thomas Papendieck, warum solche Probleme entstehen und wie man sie vermeidet.
UnitTests sind ein wichtiger Bestandteil bei der Qualitätssicherung. Sie können ihre Vorteile aber nur dann voll entfalten, wenn sie die Weiterentwicklung des produktiven Codes nicht behindern.
Die Präsentation zeigt den Zusammenhang zwischen Code-Architektur, Testbarkeit und Qualität der Unittests und wie "CleanCode" sowie der Einsatz von Mocking-Frameworks zu besseren Unittests (und besserem Code) führen.
Bei der UI-Testautomatisierung lauern in der Praxis viele Tücken. Diese Tücken sorgen gerne dafür das Entwickler Tage und Nächste investieren müssen um Tests umzusetzen. Lernen sie anhand von Beispielen aus unserem Projektalltag wie sie typische Probleme bei der UI Testautomatisierung mit CodedUI frühzeitig verhindern können. Das Motto lautet hier: "Vorbereitung ist die halbe Miete". Aus diesen Motto leiten sich die wesentliche Inhalte für den Vortrag ab:
- Wie sind Anwendungen (WPF, WinForms, Universal Apps) für UI-Tests zu optimieren?
- Wie sieht ein wartbarer CodedUI-Test aus?
- Wie sieht eine CodedUI Codebasis für große Anwendungen aus?
- Was sind die typischen Do's und Dont's?
- Und zu guter Letzt: Wann verwende ich besser kein CodedUI?
Bei der UI-Testautomatisierung lauern in der Praxis viele Tücken. Diese Tücken sorgen gerne dafür das Entwickler Tage und Nächste investieren müssen um Tests umzusetzen. Lernen sie anhand von Beispielen aus unserem Projektalltag wie sie typische Probleme bei der UI Testautomatisierung mit CodedUI frühzeitig verhindern können. Das Motto lautet hier: "Vorbereitung ist die halbe Miete". Aus diesen Motto leiten sich die wesentliche Inhalte für den Vortrag ab:
- Wie sind Anwendungen (WPF, WinForms, Universal Apps) für UI-Tests zu optimieren?
- Wie sieht ein wartbarer CodedUI-Test aus?
- Wie sieht eine CodedUI Codebasis für große Anwendungen aus?
- Was sind die typischen Do's und Dont's?
- Und zu guter Letzt: Wann verwende ich besser kein CodedUI?
Korrekte nebenläufige Anwendungen mit Koroutinen und TDDJörn Dinkla
Mit Koroutinen können nebenläufige und asynchrone Anwendungen in Kotlin präzise und strukturiert geschrieben werden. Leider erhöht sich durch die Nebenläufigkeit oft auch die Komplexität und es ist schwierig, fehlerfreie und wartbare Programme zu erstellen. Als Lösung bietet sich die testgetriebene Entwicklung (TDD) an.
Jedes IT-System stirbt irgendwann und muss durch ein neues System abgelöst werden. Solche Systemablösen bergen zahlreise Herausforderungen: Keine Doku, eine Technologie, die niemand mehr gut kennt, wissende Mitarbeiter sind nicht mehr greifbar, hoher Zeitdruck, großes Risiko im Betrieb etc. - oft eher Organtransplantation, als IT-Projekt.
Im Vortrag möchte ich meine Erfahrungen aus großen Systemablöseprojekten teilen. Wir werden uns ansehen, wie man Methoden aus Requirements Engineering und Reverse Engineering so kombiniert, dass alle notwendigen Anforderungen entdeckt werden. Wir werden sehen, dass die Zusammenarbeit zwischen Fachbereich und IT der kritische Erfolgsfaktor ist, wie man das am Besten organisiert und wie man Use Cases und ein Glossar dabei unterstützend einsetzt.
eCATT & OpenSource - Automatisierter Test in heterogenen SystemlandschaftenChristoph Menke
Nur in den seltensten Fälle besteht eine Systemlandschaft rein aus SAP Systeme. Meistens spielen auch Non-SAP Anwendungen innerhalb der IT-Landschaft eine wichtige Rolle. Das etablieren einer Testautomatisierung, welche der Systemlandschaft entspricht und diese bedienen kann ist herausfordernd. Ich berichte in diesem Vortrag darüber, wie wir bei einem Kunden ein Framework eingeführt haben aus welchen sich unterschiedliche Testautomatisierungswerkzeuge einheitlich und wiederverwendbar ansteuern und nutzen lassen und wie wir auch eCATT in dieses Framework integriert haben.
Vortrag im Rahmen des 2. eBay Tech Talks am 22.11.2012.
Es werden verschiedene Testarten vorgestellt, die die Qualität der mobile.de iOS apps sichern: Unit Tests, und vor allem BDD Akzeptanztests mit Cucumber und Frank.
Testgetriebene Entwicklung mit Jasmine und Karma hat sich mittlerweile schon als defacto-Standard etabliert. Routinen ohne Abhängigkeiten lassen sich damit ohne Probleme testen. Die Schwierigkeiten beginnen jedoch schon, wenn es um die Auflösung von Abhängigkeiten geht. In diesem Vortrag werden verschiedene Strategien und Werkzeuge vorgestellt, mit denen Abhängigkeiten zu Objekten und Funktionen oder zum Server abgedeckt werden können. Aber nicht nur Abhängigkeiten stellen Schwierigkeiten bei der testgetriebenen Entwicklung dar, auch der Umgang mit Fixtures ist bei der testgetriebenen Entwicklung mit JavaScript relevant. Abgerundet wird dieser Vortrag mit einigen Best Practices für die testgetriebenen Entwicklung mit JavaScript.
Was ist eine Definition of Ready? Wozu benötigt man die DoR und was nützt sie? Welche Arten von DoRs gibt es? Welche Qualitäts-Kritieren sollten in einer DoR stehen? Wo muss die DoR im agilen Prozess positioniert werden? Wie kann ein agiles Requirements-Board die Definition und Qualitätssicherung von Anforderungen unterstützen?
A power workshop during JAX 2007 on advanced techniques of test-driven development. It deals with acceptance tests using FIT as well as with mock objects, GUI testing and Groovy as a testing language for Java.
Intersys - Integration mit Spirateam (Zurich 2017)Adam Sandman
My name is René Jehle, i am Test-Manager at Intersys since many years.
I will talk about the integration of SpiraTeam within the DevOps pipeline / DevOps process.
I selected some detail aspects from real integrations, specificly also from the Operations phase.
DWX 2017 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch m...Marc Müller
Mittlerweile haben sich im VS-Umfeld immer mehr Nicht-MSTest-Testframeworks etabliert. Im Vortrag wollen wir auf mögliche Alternativen zu MSTest und Coded UI eingehen (z. B. Selenium, Ranorex, Protractor, …). Es geht dabei um Vor-/Nachteile, sinnvolle Szenarien und wie man es geschickt in die TFS-Werkzeugwelt integriert. Das Ziel ist dabei, das Beste aus beiden Welten zu bekommen
In diesem Webcast bekommen Sie Tipps und Hilfen auf dem Weg zu einer aufgeräumten Java Landschaft, mit der Sie Kosten und Risiken minimieren. Unsere Lizenzierungs- und Java-Experten sprechen dafür u. a. über diese Fragen:
* Wann ist Java "frei"? Und wann nicht?
* Wie Sie Java Installationen entdecken: Scanning-Tools und Inventarisierungslösungen
* Was steckt hinter Java, JDK und JRE? ... Mal genau erklärt
* Welche Open JDKs gibt es? Vor- und Nachteile, Supportmöglichkeiten
* Was wird morgen? Lifecycle Management, Release-Cadence-Wechsel
* Welche Oracle Lizenz-Metriken werden wann angewandt? Prozessor Core Metrik und NUP richtig zählen, Preislisten
* Geht es auch "ohne"?
* Welche Applikationen basieren auf Java?
* Wem gehört mein Java? Spezialfragen im Umfeld von Virtualisierung und Cloud
* Wie lassen sich Kosten sparen? Kostenminimierungsansätze
Die Aufzeichnung finden Sie hier:
https://youtu.be/k1ZpxoES18I
Korrekte nebenläufige Anwendungen mit Koroutinen und TDDJörn Dinkla
Mit Koroutinen können nebenläufige und asynchrone Anwendungen in Kotlin präzise und strukturiert geschrieben werden. Leider erhöht sich durch die Nebenläufigkeit oft auch die Komplexität und es ist schwierig, fehlerfreie und wartbare Programme zu erstellen. Als Lösung bietet sich die testgetriebene Entwicklung (TDD) an.
Jedes IT-System stirbt irgendwann und muss durch ein neues System abgelöst werden. Solche Systemablösen bergen zahlreise Herausforderungen: Keine Doku, eine Technologie, die niemand mehr gut kennt, wissende Mitarbeiter sind nicht mehr greifbar, hoher Zeitdruck, großes Risiko im Betrieb etc. - oft eher Organtransplantation, als IT-Projekt.
Im Vortrag möchte ich meine Erfahrungen aus großen Systemablöseprojekten teilen. Wir werden uns ansehen, wie man Methoden aus Requirements Engineering und Reverse Engineering so kombiniert, dass alle notwendigen Anforderungen entdeckt werden. Wir werden sehen, dass die Zusammenarbeit zwischen Fachbereich und IT der kritische Erfolgsfaktor ist, wie man das am Besten organisiert und wie man Use Cases und ein Glossar dabei unterstützend einsetzt.
eCATT & OpenSource - Automatisierter Test in heterogenen SystemlandschaftenChristoph Menke
Nur in den seltensten Fälle besteht eine Systemlandschaft rein aus SAP Systeme. Meistens spielen auch Non-SAP Anwendungen innerhalb der IT-Landschaft eine wichtige Rolle. Das etablieren einer Testautomatisierung, welche der Systemlandschaft entspricht und diese bedienen kann ist herausfordernd. Ich berichte in diesem Vortrag darüber, wie wir bei einem Kunden ein Framework eingeführt haben aus welchen sich unterschiedliche Testautomatisierungswerkzeuge einheitlich und wiederverwendbar ansteuern und nutzen lassen und wie wir auch eCATT in dieses Framework integriert haben.
Vortrag im Rahmen des 2. eBay Tech Talks am 22.11.2012.
Es werden verschiedene Testarten vorgestellt, die die Qualität der mobile.de iOS apps sichern: Unit Tests, und vor allem BDD Akzeptanztests mit Cucumber und Frank.
Testgetriebene Entwicklung mit Jasmine und Karma hat sich mittlerweile schon als defacto-Standard etabliert. Routinen ohne Abhängigkeiten lassen sich damit ohne Probleme testen. Die Schwierigkeiten beginnen jedoch schon, wenn es um die Auflösung von Abhängigkeiten geht. In diesem Vortrag werden verschiedene Strategien und Werkzeuge vorgestellt, mit denen Abhängigkeiten zu Objekten und Funktionen oder zum Server abgedeckt werden können. Aber nicht nur Abhängigkeiten stellen Schwierigkeiten bei der testgetriebenen Entwicklung dar, auch der Umgang mit Fixtures ist bei der testgetriebenen Entwicklung mit JavaScript relevant. Abgerundet wird dieser Vortrag mit einigen Best Practices für die testgetriebenen Entwicklung mit JavaScript.
Was ist eine Definition of Ready? Wozu benötigt man die DoR und was nützt sie? Welche Arten von DoRs gibt es? Welche Qualitäts-Kritieren sollten in einer DoR stehen? Wo muss die DoR im agilen Prozess positioniert werden? Wie kann ein agiles Requirements-Board die Definition und Qualitätssicherung von Anforderungen unterstützen?
A power workshop during JAX 2007 on advanced techniques of test-driven development. It deals with acceptance tests using FIT as well as with mock objects, GUI testing and Groovy as a testing language for Java.
Intersys - Integration mit Spirateam (Zurich 2017)Adam Sandman
My name is René Jehle, i am Test-Manager at Intersys since many years.
I will talk about the integration of SpiraTeam within the DevOps pipeline / DevOps process.
I selected some detail aspects from real integrations, specificly also from the Operations phase.
DWX 2017 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch m...Marc Müller
Mittlerweile haben sich im VS-Umfeld immer mehr Nicht-MSTest-Testframeworks etabliert. Im Vortrag wollen wir auf mögliche Alternativen zu MSTest und Coded UI eingehen (z. B. Selenium, Ranorex, Protractor, …). Es geht dabei um Vor-/Nachteile, sinnvolle Szenarien und wie man es geschickt in die TFS-Werkzeugwelt integriert. Das Ziel ist dabei, das Beste aus beiden Welten zu bekommen
In diesem Webcast bekommen Sie Tipps und Hilfen auf dem Weg zu einer aufgeräumten Java Landschaft, mit der Sie Kosten und Risiken minimieren. Unsere Lizenzierungs- und Java-Experten sprechen dafür u. a. über diese Fragen:
* Wann ist Java "frei"? Und wann nicht?
* Wie Sie Java Installationen entdecken: Scanning-Tools und Inventarisierungslösungen
* Was steckt hinter Java, JDK und JRE? ... Mal genau erklärt
* Welche Open JDKs gibt es? Vor- und Nachteile, Supportmöglichkeiten
* Was wird morgen? Lifecycle Management, Release-Cadence-Wechsel
* Welche Oracle Lizenz-Metriken werden wann angewandt? Prozessor Core Metrik und NUP richtig zählen, Preislisten
* Geht es auch "ohne"?
* Welche Applikationen basieren auf Java?
* Wem gehört mein Java? Spezialfragen im Umfeld von Virtualisierung und Cloud
* Wie lassen sich Kosten sparen? Kostenminimierungsansätze
Die Aufzeichnung finden Sie hier:
https://youtu.be/k1ZpxoES18I
In diesem Webcast bekommen Sie Tipps und Hilfen auf dem Weg zu einer aufgeräumten Java Landschaft, mit der Sie Kosten und Risiken minimieren. Unsere Lizenzierungs- und Java-Experten sprechen dafür u. a. über diese Fragen:
* Wann ist Java "frei"? Und wann nicht?
* Wie Sie Java Installationen entdecken: Scanning-Tools und Inventarisierungslösungen
* Was steckt hinter Java, JDK und JRE? ... Mal genau erklärt
* Welche Open JDKs gibt es? Vor- und Nachteile, Supportmöglichkeiten
* Was wird morgen? Lifecycle Management, Release-Cadence-Wechsel
* Welche Oracle Lizenz-Metriken werden wann angewandt? Prozessor Core Metrik und NUP richtig zählen, Preislisten
* Geht es auch "ohne"?
* Welche Applikationen basieren auf Java?
* Wem gehört mein Java? Spezialfragen im Umfeld von Virtualisierung und Cloud
* Wie lassen sich Kosten sparen? Kostenminimierungsansätze
Die Aufzeichnung finden Sie hier: https://youtu.be/abVeIGmxYB0
This document provides an overview of a webinar on cloud-native architectures, API gateways, and service meshes. The webinar covered: challenges of cloud-native applications and distributed architectures; how API gateways and service meshes help address issues like connectivity, security, and observability; similarities and differences between API gateways and service meshes; and a demonstration of Kong API gateway and Kuma service mesh. The webinar concluded that API gateways and service meshes can work together to improve developer productivity and infrastructure management.
Folien zum Webcast mit Fritz Wein Weinhappl (Oracle) und Uwe Küchler (OPITZ) am 27. April 2021.
Die Aufzeichnung finden Sie unter: https://youtu.be/un4gzCsmfwg
This document outlines 10 propositions for professional software development. It discusses how feedback cycles and a DevOps culture are essential. It also emphasizes that every IT professional must master the git pull request model. Other key points include shifting work left to earlier stages, adopting cloud-native principles, and automating as many processes as possible to reduce turnaround times and handle complexity. An open mindset is vital to adapt to a quickly changing ecosystem, and hybrid multi-cloud is considered the default approach.