Dank der Xamarin-Plattform können C#-Entwickler Apps für Android – das verbreitetste mobile Betriebssystem – unter Zuhilfenahme bekannter Werkzeuge, Sprachen und Frameworks schreiben. Und genau darum geht es auch in diesem Vortrag. In 60 Minuten werde ich Ihnen erklären, welche Systemvoraussetzungen erfüllt sein müssen, um mit Visual Studio und C# für Android entwickeln zu können und was es mit Activities und Intents auf sich hat. Zu diesem Zweck werde ich live eine kleine App programmieren, die neben einer Multiscreen-Navigation auch lokale Datenhaltung und einiges mehr demonstriert. Den Quellcode gibt es unter https://github.com/AndreKraemer/DWX-2018-Xam-Android-SavedIt
RRDTool dürfte den meisten Nagios-Administratoren ein Begriff sein, denn die meisten Nagios-Addons zur Visualisierung von zeitbezogenen Messwerten greifen zurück auf das „Schweizer“ Taschenmesser von Tobi Oetiker.
Viele dieser Addons lassen sich dank ihrer guten Dokumentation recht schnell installieren, legen sich wie eine „zweite Schicht“ um RRDtool, und kümmern sich sowohl um die Erstellung und Befüllung der Round-Robin-Datenbanken als auch die Generierung der Graphen. Der Weg zu einer schnell aufgesetzten Visualisierung von Nagios-Standardchecks mit Default-Templates führt also längst nicht mehr zwangsläufig über rrdtool-Manpages.
Kenntnis über die Datenhaltung in RRDtool ist dennoch unabdingbar, denn die Graphen geben nicht zwangsläufig die Ergebnisse von Nagios exakt wieder - warum sie trotzdem stimmen, werden wir besprechen:
- Strom- und Bestandsdaten: was RRDTool wirklich will
- Typfrage: COUNTER, DERIVE, ABSOLUTE, GAUGE: man nehme?
- „Was war - was wird?“: RRDTool lebt in der Vergangenheit
- Wert ist nicht gleich Wert: Transformierung, Normalisierung und Konsolidierung
Dank der Xamarin-Plattform können C#-Entwickler Apps für Android – das verbreitetste mobile Betriebssystem – unter Zuhilfenahme bekannter Werkzeuge, Sprachen und Frameworks schreiben. Und genau darum geht es auch in diesem Vortrag. In 60 Minuten werde ich Ihnen erklären, welche Systemvoraussetzungen erfüllt sein müssen, um mit Visual Studio und C# für Android entwickeln zu können und was es mit Activities und Intents auf sich hat. Zu diesem Zweck werde ich live eine kleine App programmieren, die neben einer Multiscreen-Navigation auch lokale Datenhaltung und einiges mehr demonstriert. Den Quellcode gibt es unter https://github.com/AndreKraemer/DWX-2018-Xam-Android-SavedIt
RRDTool dürfte den meisten Nagios-Administratoren ein Begriff sein, denn die meisten Nagios-Addons zur Visualisierung von zeitbezogenen Messwerten greifen zurück auf das „Schweizer“ Taschenmesser von Tobi Oetiker.
Viele dieser Addons lassen sich dank ihrer guten Dokumentation recht schnell installieren, legen sich wie eine „zweite Schicht“ um RRDtool, und kümmern sich sowohl um die Erstellung und Befüllung der Round-Robin-Datenbanken als auch die Generierung der Graphen. Der Weg zu einer schnell aufgesetzten Visualisierung von Nagios-Standardchecks mit Default-Templates führt also längst nicht mehr zwangsläufig über rrdtool-Manpages.
Kenntnis über die Datenhaltung in RRDtool ist dennoch unabdingbar, denn die Graphen geben nicht zwangsläufig die Ergebnisse von Nagios exakt wieder - warum sie trotzdem stimmen, werden wir besprechen:
- Strom- und Bestandsdaten: was RRDTool wirklich will
- Typfrage: COUNTER, DERIVE, ABSOLUTE, GAUGE: man nehme?
- „Was war - was wird?“: RRDTool lebt in der Vergangenheit
- Wert ist nicht gleich Wert: Transformierung, Normalisierung und Konsolidierung
Manchmal haben wir den Eindruck, daß unsere
Gebete nicht erhört werden. Dabei ist Gott weder
zu schwach, unsere Gebete zu erhören, noch ist er untreu gegenüber seinem Wort. Aber woran liegt es?
Wir sind beraten, wenn wir die Botschaft dieses alten Kirchenliedes wieder beachten und zum Programm machen in Politik und Gesellschaft. Hier ist eine Übersicht darüber, wie tief der Glaube in einer christlichen Leitkultur auch die Gesetze geprägt hat.
Manifest des freien Urchristentums an das deutsche VolkIngo Breuer
Heute könnten wir froh sein, wenn man 1848 auf das Manifest dieses Baptistenpredigers gehört hätte. Leider ist die Welt dem unheilvollen Manifesto des Satanisten Karl Marx aus demselben Jahr auf den Leim gegangen, wodurch viele Generation ins Unglück gestürzt wurden. Köbners Standpunkte sind aber auch in der heutigen Politik und Gesellschaft höchst relevant.
Haft wegen Homeschooling. Der Bericht eines Vaters.Ingo Breuer
Wegen Homeschooling ins Gefängnis. Ein Christ berichtet über seine Inhaftierung. In Deutschland werden Elternrechte mit Fußen getreten durch eine Art Verwaltungsdiktatur im Bereich Kinder, Erziehung und Schule.
Wo studieren? Neben fachlichen Aspekten ist auch das Umfeld des Studienorts für viele junge Menschen wichtig.
Wir haben recherchiert und die interessantesten Fakten für Euch aufbereitet.
Schaut doch mal auf unseren Corporate Blog!
http://blog.lecturio.de/die-kluegsten-staedte-deutschlands/
OSMC 2014 | Icinga Web 2 kann mehr by Thomas GelfNETWAYS
Jetzt ist es da, Icinga Web 2. Leichter, schneller und mächtiger als je zuvor. Doch wir wollen uns nicht zurücklehnen, sondern legen jetzt erst richtig los. Der Großteil der Arbeit steckt bisher unter der Haube und dient nur einem Zweck: das Schreiben von Modulen so einfach als irgend möglich zu gestalten. Und neben den ersten fertigen Modulen steht schon eine ganze Reihe weiterer in den Startlöchern.
Puppet, Forman und mehr integrieren? Endlich mal jeden Switchport samt aktuellem Traffic, STP-Status, VLANs und mehr an einer Stelle ersichtlich haben? Den Chassis-Aufbau gleich mit dazu? Via Jolokia JMX-Bäume durchstöbern? Zertifikate inventarisieren? Tickets mehr als nur verlinken? Dieser Vortrag zeigt was es schon gibt, was noch kommt und wo wir hin wollen. changed to cinga Web 2 ist leichter, schneller und mächtiger als seine Vorgänger. Doch wir wollen uns nicht zurücklehnen, sondern legen jetzt erst richtig los. Der Großteil der Arbeit steckt bisher unter der Haube und dient nur einem Zweck: das Schreiben von Modulen so einfach als irgend möglich zu gestalten. Und neben den ersten fertigen Modulen steht schon eine ganze Reihe weiterer in den Startlöchern. Puppet, Forman und mehr integrieren? Endlich mal jeden Switchport samt aktuellem Traffic, STP-Status, VLANs und mehr an einer Stelle ersichtlich haben? Den Chassis-Aufbau gleich mit dazu? Via Jolokia JMX-Bäume durchstöbern? Zertifikate inventarisieren? Tickets mehr als nur verlinken? Der Vortrag gibt einen Einblick in die Architektur von Icinga Web 2 und zeigt anhand konkreter die Integration von Addons und anderen Modulen.
EnterJS 2015 - JavaScript von Morgen schon heutePhilipp Burgmer
Präsentation zu meinem Vortrag bei der EnterJS 2015.
ECMAScript 2015, der Standard, der als Grundlage für die Implementierung von JavaScript dient, nimmt immer konkretere Formen an. Viele Teile der Spezifikation sind so gut wie fertig, und neuere Browser setzen sie bis zu einem gewissen Grad bereits um. Dennoch kann man heute und auch in naher Zukunft noch keine Anwendung mit ES 2015 ausliefern, da es eben nicht alle relevanten Browser unterstützen. In diesem Vortrag erfahren Sie, wie sich heute schon mit Transpilern und Polyfills in ES 2015 entwickeln lässt und welche Vorteile das bietet. Anhand von Codebeispielen wird gezeigt, wie man proprietäre Lösungen wie RequireJS und Promises durch neue Standards ersetzen kann und seinen Code dadurch zukunftssicher macht.
Manchmal haben wir den Eindruck, daß unsere
Gebete nicht erhört werden. Dabei ist Gott weder
zu schwach, unsere Gebete zu erhören, noch ist er untreu gegenüber seinem Wort. Aber woran liegt es?
Wir sind beraten, wenn wir die Botschaft dieses alten Kirchenliedes wieder beachten und zum Programm machen in Politik und Gesellschaft. Hier ist eine Übersicht darüber, wie tief der Glaube in einer christlichen Leitkultur auch die Gesetze geprägt hat.
Manifest des freien Urchristentums an das deutsche VolkIngo Breuer
Heute könnten wir froh sein, wenn man 1848 auf das Manifest dieses Baptistenpredigers gehört hätte. Leider ist die Welt dem unheilvollen Manifesto des Satanisten Karl Marx aus demselben Jahr auf den Leim gegangen, wodurch viele Generation ins Unglück gestürzt wurden. Köbners Standpunkte sind aber auch in der heutigen Politik und Gesellschaft höchst relevant.
Haft wegen Homeschooling. Der Bericht eines Vaters.Ingo Breuer
Wegen Homeschooling ins Gefängnis. Ein Christ berichtet über seine Inhaftierung. In Deutschland werden Elternrechte mit Fußen getreten durch eine Art Verwaltungsdiktatur im Bereich Kinder, Erziehung und Schule.
Wo studieren? Neben fachlichen Aspekten ist auch das Umfeld des Studienorts für viele junge Menschen wichtig.
Wir haben recherchiert und die interessantesten Fakten für Euch aufbereitet.
Schaut doch mal auf unseren Corporate Blog!
http://blog.lecturio.de/die-kluegsten-staedte-deutschlands/
OSMC 2014 | Icinga Web 2 kann mehr by Thomas GelfNETWAYS
Jetzt ist es da, Icinga Web 2. Leichter, schneller und mächtiger als je zuvor. Doch wir wollen uns nicht zurücklehnen, sondern legen jetzt erst richtig los. Der Großteil der Arbeit steckt bisher unter der Haube und dient nur einem Zweck: das Schreiben von Modulen so einfach als irgend möglich zu gestalten. Und neben den ersten fertigen Modulen steht schon eine ganze Reihe weiterer in den Startlöchern.
Puppet, Forman und mehr integrieren? Endlich mal jeden Switchport samt aktuellem Traffic, STP-Status, VLANs und mehr an einer Stelle ersichtlich haben? Den Chassis-Aufbau gleich mit dazu? Via Jolokia JMX-Bäume durchstöbern? Zertifikate inventarisieren? Tickets mehr als nur verlinken? Dieser Vortrag zeigt was es schon gibt, was noch kommt und wo wir hin wollen. changed to cinga Web 2 ist leichter, schneller und mächtiger als seine Vorgänger. Doch wir wollen uns nicht zurücklehnen, sondern legen jetzt erst richtig los. Der Großteil der Arbeit steckt bisher unter der Haube und dient nur einem Zweck: das Schreiben von Modulen so einfach als irgend möglich zu gestalten. Und neben den ersten fertigen Modulen steht schon eine ganze Reihe weiterer in den Startlöchern. Puppet, Forman und mehr integrieren? Endlich mal jeden Switchport samt aktuellem Traffic, STP-Status, VLANs und mehr an einer Stelle ersichtlich haben? Den Chassis-Aufbau gleich mit dazu? Via Jolokia JMX-Bäume durchstöbern? Zertifikate inventarisieren? Tickets mehr als nur verlinken? Der Vortrag gibt einen Einblick in die Architektur von Icinga Web 2 und zeigt anhand konkreter die Integration von Addons und anderen Modulen.
EnterJS 2015 - JavaScript von Morgen schon heutePhilipp Burgmer
Präsentation zu meinem Vortrag bei der EnterJS 2015.
ECMAScript 2015, der Standard, der als Grundlage für die Implementierung von JavaScript dient, nimmt immer konkretere Formen an. Viele Teile der Spezifikation sind so gut wie fertig, und neuere Browser setzen sie bis zu einem gewissen Grad bereits um. Dennoch kann man heute und auch in naher Zukunft noch keine Anwendung mit ES 2015 ausliefern, da es eben nicht alle relevanten Browser unterstützen. In diesem Vortrag erfahren Sie, wie sich heute schon mit Transpilern und Polyfills in ES 2015 entwickeln lässt und welche Vorteile das bietet. Anhand von Codebeispielen wird gezeigt, wie man proprietäre Lösungen wie RequireJS und Promises durch neue Standards ersetzen kann und seinen Code dadurch zukunftssicher macht.
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.
Robuste Design Systems mit Storybook und Angular: vom Konzept zur lebendigen ...Andreas Wissel
Mit den stetig wachsenden Möglichkeiten, die Cross-Platform-Anwendungen bieten, wachsen auch die Anforderungen an deren Design. Skalierbarkeit, Flexibilität und Wandelbarkeit gehören zu den Grundprinzipien eines modernen User-Interfaces. Andreas Wissel und Christian Liebel erarbeiten mit Ihnen in diesem Workshop anhand von Praxisbeispielen einen robusten Workflow. Mit Storybook und Angular lassen sich so isolierte, test- und wartbare Komponenten im Handumdrehen umsetzen. Ihre Designer und Entwickler werden es lieben.
Es gibt gute Gründe, Software konsequent und dynamisch zu modularisieren. Zum Beispiel, um eine übersichtliche Softwarestruktur in großen Projekten zu gewährleisten oder um Anwendungslogik zur Laufzeit austauschen zu können (Hot Deployment). Java bietet jedoch kein eigenes Konzept zur Modularisierung.
Weitere Vorträge, die wir auch gern in Ihrem Unternehmen halten, finden Sie unter: https://www.iks-gmbh.com/impulsvortraege
Softwarequalitätssicherung mit Continuous Integration ToolsGFU Cyrus AG
Kurzbeschreibung
Automatische Softwaretests rücken immer mehr in den Mittelpunkt. Gerade die derzeit vielfach eingesetzten agilen Vorgehensweisen benötigen ein teamübergreifendes und reproduzierbares Verfahren zur Sicherung der Softwarequalität. In diesem Vortrag legt Dirk Weil, Geschäftsführer der GEDOPLAN GmbH aus Bielefeld, das Augenmerk auf die Werkzeuge, die in Java-Projekten zum fortlaufenden Build und Test von Software genutzt werden können. Anhand einiger Praxisbeispiele zeigt er den Aufbau und Betrieb einer Continuous-Integration-Umgebung, die GEDOPALN für Softwareprojekte betreibt. Dozent: Dirk Weil, Gedoplan
Inhalt
- Grundlagen und Motivation automatischer Softwaretests
- Testziele und Verfahren (Unit-Tests, Regressionstests, Akzeptanztests etc.)
- Build- und Testautomatisierung
- Beispielumgebung auf Basis von Ant, Maven, Subversion und Hudson
- Code-Analyse
- Extreme Feedback
Never Code Alone: Von Symfony Forms zu einer SPA auf APIsStefan Adolf
Folien mit Einführung und Usecases für eine NCA-Session. Wir beginnen mit einer Symfony Forms-Applikation für eine simple Event-Verwaltung und wandeln sie sukzessive um zu einer React-SPA, die eine Symony-API verwendet.
Hier das Repository dafür: https://github.com/nevercodealone/ncaevent-remote-maerz-react
Applikationsmodernisierung: Der Weg von Legacy in die CloudAarno Aukia
Stell Dir vor: Du willst einen 6000er besteigen. Eine gute Vorbereitung, gutes Material und professionelles Wissen sind dabei unabdingbar.
Du schnappst Dir einen Berg-Guide, der Dich bei schwierigen Passagen unterstützt und Dir das passende Know-How weitergibt. Das schwere Material kannst Du auf ein Team aufteilen, das genau weiss, welche Pakete Du am sinnvollsten schnürst. Sie zeigen Dir zudem, welchen unnötigen Ballast Du abwerfen kannst.
Am Ende stehst Du am Ziel – Dich erwartet ein grossartiges Resultat und die Zufriedenheit des Vollbrachten.
Genau so fühlt sich die Reise Deiner Legacy Applikation an.
Im Webinar zeigen Dir die drei Partnerfirmen Object Engineering, Puzzle und VSHN, wie Du Deine Applikationen fit hältst. Dabei geben sie Dir einen Einblick, wie Experten die Applikationen analysieren, aufpeppen und den Betrieb sicherstellen können.
DevOps der Triple-E Klasse - Eclipse DemoCampWerner Keil
Maersk Line lässt nicht nur die weltweit größten Schiffe der 'Triple-E' Klasse bauen. Continuous Integration und Delivery in einer ähnlichen Größenordnung mit Hudson, Maven und Tools wie Kokki (ähnlich Puppet oder Chef ) werden dort ebenso praktiziert.
Diese Session gewährt eine kurze Übersicht über Multi-Configuration (Matrix) Job-Typen wie sie in den meisten dieser Projekte genutzt werden. Highlights in einer heterogenen Umgebung, wie man sie in Vielfalt und Umfang sonst fast nur bei großen Anbietern von Public Cloud Lösungen findet.
OSMC 2012 | End2End-Monitoring von Webapplikationen mit SAHI by Simon MeggleNETWAYS
Bei modernen Web-Anwendungen sollten nicht nur die am Ergebnis beteiligten Komponenten aus technischer Sicht, sondern auch das Ergebnis aus der Warte des Anwenders überwacht werden.
Mit dem Open-Source-Tool SAHI lassen sich umfangreiche End2End-Checks für Web2.0-Applikationen schnell und komfortabel aufzeichnen und automatisiert abspielen. In diesem Vortrag wird gezeigt, wie SAHI-Tests in ein Nagios-kompatibles Monitoring-System integriert werden können. Ergänzt werden die Checks durch Zeitmessungen für Teilschritte, die Visualisierung der Laufzeiten in RRD-Graphen sowie die automatische Erstellung von Screenshots zur Fehleranalyse.
OpenShift-Build-Pipelines: Build ► Test ► Run!Tobias Schneck
GitHub Repo: https://github.com/toschneck/openshift-example-bakery-ci-pipeline
Stabile und skalierbare Continuous-Integration-Umgebungen sind seit jeher schwer aufzusetzen und zu pflegen. Besonders in Zeiten von Containern und Cloud-Native-Apps, wird der nächste Schritt hin zur voll-automatisierten Build-Pipeline eingefordert. Sowohl der Aufbau des automatisierten Deployments als auch die Ausführung von automatisierten Integration- und UI-Tests stellen die DevOps-Teams vor neue Hürden. Einen eleganten Ausweg bieten Container-basierte CI/CD-Umgebungen, die dynamisch zum Build-Zeitpunkt bereitgestellt werden. An diesen Punkt setzt die Open-Source-Container-Plattform "OpenShift" an. Durch den Infrastructure-as-Code-Ansatz wird sowohl der CI-Server als auch der komplette Build-Lifecycle vom Bau der Artefakte bis zum Testen der Anwendung in den Container-Cluster verschoben.
Der Talk zeigt auf wo die Unterschiede von OpenShift zur Kubernetes-API liegen, wie durch Jenkins-Build-Pipelines Artefakte gebaut, in Docker Images verpackt, getestet und deployed werden können. In mehreren Live-Demos wird aufgezeigt, wie mit geschickten Einsatz von Open-Source-Tools sowohl Server-APIs als auch grafische Web- und Rich-Client-Oberflächen in Container-Clustern als Black-Box getestet werden können. Eine abschließende, kritische Bewertung der gesammelten Erfahrungen, zeigt wo das Potenzial dieses Ansatz liegt, aber auch welche Fallstricke derzeit (noch) zu meistern sind.
2. 21.05.2014 www.consol.de2
AGENDA
• Begriff "End2End-Monitoring"
• die Situation und ihre Herausforderung
• Funktionsweise von Sahi/Sikuli
• Die Tools und ihre Stärken im Vergleich
• Aus zwei mach eins: Sakuli = Sahi + Sikuli
• Architektur von Sakuli
• Live-Demos
• Ausblick
• geplante Features
• Queue-basierte Architektur (Release 2)
• Download
3. 21.05.2014 www.consol.de
Begriff "End2End-Monitoring"
• Business-kritische Applikationen bestehen oft aus einer Vielzahl an Komponenten
• Applikations-Qualität nur am Ende der Funktionskette messbar
=> Monitoring aus Sicht des Anwenders durch User-Simulation
3
4. 21.05.2014 www.consol.de
die Situation und ihre Herausforderung
• viele frei verfügbare E2E-Tools
• Grenzen
• zu speziell
• Betriebssystem-spezifisch
• zu generisch
• zu wenig an der Realität
• Bisher: Sahi2OMD (vorgestellt auf der OSMC 2013)
4
?
5. 21.05.2014 www.consol.de5
Funktionsweise von Sahi
• Was ist/kann Sahi?
ü entwickelt von Narayan Raman (Indien)
ü „Web Automation and Testing Tool“
-> Tool zur Simulation von User-Aktion im Webbrowser
ü AJAX, Frames, iFrames, Up/Downloads, Browser alerts, NTLM Auth, HTTPS…
ü leistungsfähige Funktionen, wie z.B.:
ü intelligente Objekt-Adressierung auch über Frames/iFrames hinweg (kein XPath)
ü Funktionen für File/DB-Zugriff
ü Batch Mode & Multi-Threaded Playback
ü Sahi erkennt selbst, wenn Seiten/AJAX-Requests fertig geladen sind.
ü Java-API
ü Sahi läuft auf jedem OS mit Java (z.B. auch iOS, Android…) in jedem Browser (ohne Plugin)
ü Open Source
• Was ist/kann Sahi nicht?
- alles, was außerhalb des DOMs liegt (z.B. Flash-Inhalte, Java-Applets)
- Tests außerhalb des Browserinhaltes
http://sahi.co.in/
6. 21.05.2014 www.consol.de6
localhost:9999
Sahi Test-Host
Webserver
Funktionsweise von Sahi
HTTP Request/Response
Browser Sahi-Prozess
• Sahi wird als Proxy zwischen Browser und Server geschaltet
• Aufzeichnung aller weitergeleiteten Requests in SahiScript
• Wiedergabe durch Injizieren der SahiScripts in den Browser
Testcase
7. 21.05.2014 www.consol.de
Situation und Herausforderung
7
• viele frei verfügbare E2E-Tools
• Grenzen
• zu speziell (Bsp. PIN-Abfrage in Webbrowser)
• abhängig vom Betriebssystem
• zu generisch
• zu wenig an der Realität (Bsp. Test auf Protokoll-Ebene)
• Bisher: Sahi2OMD (OSMC 2013)
• End2End Web-Tests
• Hürden
• Browserdialoge
• Java-Applets, Flash, ...
• Kundenwunsch: GUI-Monitoring
Herausforderung:
Kompensation der Schwachstellen von Sahi durch zweites Tool
8. 21.05.2014 www.consol.de
Funktionsweise von Sikuli
8
• Sikuli kann alles sehen und steuern, was der User sieht und mit Maus und Tastatur
steuern kann
• Kern-Komponenten:
• java.awt.Robot zur Steuerung von Maus/Tastaturevents
• OpenCV Engine zur Erkennung von Bildmustern
• Screenshots werden auf dem Bildschirm lokalisiert => Region
• Region-Objekte erlauben Aktionen wie click(), type(), etc...
• Texterkennung (OCR), experimental
• auf jeder Plattform verfügbar
• Open Source (MIT)
9. 21.05.2014 www.consol.de
Die Tools und ihre Stärken im Vergleich
9
100% Web
Web & "off-web"
GUI-Tests (off-Browser content)
1) theoretisch möglich; im Vergleich zu Sahi jedoch viel zu aufwändig (und Unsinn!)
2) nicht möglich; Java, Flash, PIN-Dialoge etc. sind für Sahi nicht "sichtbar", da keine Web-Inhalte
3) theoretisch möglich (siehe 1); bestenfalls jedoch "Notlösung"
4) Sahi kennt nur den Content des Browser-Canvas (den aber gut...)
1)
3) 2)
4)
10. 21.05.2014 www.consol.de
Die Tools und ihre Stärken im Vergleich
10
100% Web
Web & "off-web"
GUI-Tests (off-Browser content)
1) theoretisch möglich; im Vergleich zu Sahi jedoch viel zu aufwändig (und Unsinn!)
2) nicht möglich; Java, Flash, PIN-Dialoge etc. sind für Sahi nicht "sichtbar", da keine Web-Inhalte
3) theoretisch möglich (siehe 1); bestenfalls jedoch "Notlösung"
4) Sahi kennt nur den Content des Browser-Canvas (den aber gut...)
1)
3) 2)
4)
Sakuli
11. 21.05.2014 www.consol.de
Aus zwei mach eins: Sakuli = Sahi + Sikuli
11
Test
Case
API
API
"web""off-web"
SAKULI
• entstanden 2013 aus "sahi2OMD" (-> OSMC 2012)"
=> Gewinnung von SIEMENS als POC-Sponsor!
• Java-Architektur: Steuern von Sahi und Sikuli über
deren Java-API"
• Kapselung der Funktionsaufrufe beider Tools in
JavaScript"
• einheitliche Handhabung"
• Erweiterung bestehender Funktionen"
• seamless integration: Sahi- und Sikuli-
Funktionen sind im Test beliebig mischbar"
• Sakuli stellt alle Backend-Funktionen bereit
(Initialisierung, Zugriff auf die Result-DB,
Erstellen von Screenshots bei Exceptions,
Logging, ...) "
• Test-Cases in JavaScript-Syntax: Keine Java-
Kenntnisse zur Test-Erstellung erforderlich"
14. 21.05.2014 www.consol.de
Ausblick: weitere geplante Features
14
• Headless Execution
• Linux: xvfb
• Windows: ?
• Aufzeichnung der Testabläufe als Film
• Fehlerdokumentation
• Debugging
• Multi-Wait
• Sakuli als Integration Test Tool
• [Dein Vorschlag]
15. 21.05.2014 www.consol.de
Ausblick: Queue-basierte Architektur (Release 2)
15
Scheduler
Server/Scheduler
• mit Web-Oberfläche zur Verwaltung incl.
JavaScript-Editor
• stellt Queues (gruppiert nach OS, Browser o.ä.)
• legt Test-Jobs in die entspr. Queues
• Test-Jobs enthalten alle zur Ausführung
notwendigen Dateien
16. 21.05.2014 www.consol.de
Ausblick: Queue-basierte Architektur (Release 2)
16
Scheduler
Q1" Q2" Q3" Q4"
Worker
1
Worker
2
Worker
3
Worker
• ist in einer/mehreren Queue(s) registriert
• entnimmt Job aus der Queue und führt ihn aus
• speichert das Ergebnis in einer Result-Queue
Results"
Worker
4
17. 21.05.2014 www.consol.de
Ausblick: Queue-basierte Architektur (Release 2)
17
Scheduler
Q1" Q2" Q3" Q4"
Worker
1
Worker
2
Worker
3
Server/Scheduler
• liest die Result-Queue und speichert die
Ergebnisse in der DB / sendet sie per GearmanD
OMD
• prüft Result-Datenbank mit check_mysql_health
(Sakuli-Mode)
Results"
Worker
4
18. 21.05.2014 www.consol.de
Ausblick: Queue-basierte Architektur (Release 2)
18
Scheduler
Q1" Q2" Q3" Q4"
Worker
1
Worker
2
Worker
3
ü Lastverteilung
ü Erhöhung der Ausfallsicherheit
ü System "balanciert" sich selbst aus
ü Clients können zur Wartung inaktiv
geschalten werden,
die Messungen verteilen sich auf andere
Nodes
ü einfache Skalierung durch Hinzufügen von
Workern
ü Integration des Sakuli-Schedulers in OMD
Results"
Worker
4