Arbeiten mit Testframeworks



Ähnliche Dokumente
Software Engineering in der Praxis

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw,

Testphase. Das Testen

Über die Internetseite Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Rillsoft Project - Installation der Software

Testen von graphischen Benutzeroberflächen. 24. Juni 2015

Integrierte und automatisierte GUI-Tests in Java

Software - Testung ETIS SS05

AnNoText. AnNoText Online-Update. Copyright Wolters Kluwer Deutschland GmbH

Einreichung zum Call for Papers

Automatische Testfallgenerierung aus Modellen. 8. Neu-Ulmer Test-Engineering-Day Martin Miethe

Tutorial Windows XP SP2 verteilen

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof

BSV Software Support Mobile Portal (SMP) Stand

Testmanagement in IT-Projekten

Einführung in die Informatik Tools

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

SEP 114. Design by Contract

Programmiertechnik II

Installationsanleitung für pcvisit Server (pcvisit 12.0)

Internet Explorer Version 6

Testen mit JUnit. Motivation

Testautomatisierung. Lessons Learned. qme Software. Gustav-Meyer-Allee Berlin. Telefon 030/ Telefax 030/

Lizenzen auschecken. Was ist zu tun?

Testen von graphischen Benutzeroberflächen. 26. Juni 2013

Qualitätsmanagement im Projekt

Task: Nmap Skripte ausführen

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail:

Sophia Business Leitfaden zur Administration

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Formular»Fragenkatalog BIM-Server«

Auto-Provisionierung tiptel 31x0 mit Yeastar MyPBX

Installationsanleitung dateiagent Pro

Agentur für Werbung & Internet. Schritt für Schritt: -Konfiguration mit Apple Mail

Komponententest. Testen von Software Systemen. Übung 02 SS 2009 Version:

Benutzerhandbuch MedHQ-App

Icinga Teil 2. Andreas Teuchert. 25. Juli 2014

Mobile-Szenario in der Integrationskomponente einrichten

Zentrale Installation

Übungen zur Softwaretechnik

Installation von Office 365 auf einem privaten PC

Version Deutsch In diesem HOWTO wird beschrieben wie Sie Ihren Gästen die Anmeldung über eine SMS ermöglichen.

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

Anleitung zur Erstellung einer Batchdatei. - für das automatisierte Verbinden mit Netzlaufwerken beim Systemstart -

GEORG.NET Anbindung an Ihr ACTIVE-DIRECTORY

Finaler Testbericht. Finaler Testbericht. 1 Einführung Warum Softwaretests?... 2

Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2

Betriebswirtschaftliches Beratungstool für Steuerberater Ziele, Inhalte und Struktur

Print2CAD 2017, 8th Generation. Netzwerkversionen

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Anwenden eines Service Packs auf eine Workstation

Softwaren Engineering I

ERSTELLEN VON INCENTIVES IM ZANOX NETZWERK

(1) Mit dem Administrator Modul werden die Datenbank, Gruppen, Benutzer, Projekte und sonstige Aufgaben verwaltet.

Sichern der persönlichen Daten auf einem Windows Computer

Kurzanleitung zum Einrichten eines POP3-Mail-Kontos unter Outlook 2013

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Powermanager Server- Client- Installation

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch

Wie richten Sie Ihr Web Paket bei Netpage24 ein

1 Voraussetzungen für Einsatz des FRITZ! LAN Assistenten

Man liest sich: POP3/IMAP

Installationsanleitung ETK RPC2 Schnittstelle (hier: Anzeige Sonderausstattung, Lackcode, Polstercode im ETK)

HISPRO ein Service-Angebot von HIS

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Anleitung. Einrichten Ihres Postfaches. Mail (Mac OS X)

Sicherheit QUALITÄTSSICHERUNG DESIGNER24.CH V 1.2. ADRESSE Designer24.ch Web Print Development Postfach Turbenthal Schweiz

Neues Modul für individuelle Anlagen. Änderung bei den Postleitzahl-Mutationen

Anleitung. Update/Aktualisierung EBV Einzelplatz Homepage. und Mängelkatalog

HP Service Virtualization. Bernd Schindelasch 19. Juni 2013

Kopfzeile. Inhaltsverzeichnis

KNX BAOS Gadget. Installations- und Bedienanleitung. WEINZIERL ENGINEERING GmbH. DE Burgkirchen Web:

Internet online Update (Internet Explorer)

Agile Software Verteilung

ARCWAY Cockpit. Professional Upgrade. von 3.0 auf 3.1

Was ist neu in Sage CRM 6.1

Verwendung des Terminalservers der MUG

An integrated total solution for automatic job scheduling without user interaction

Installationsanleitung für pcvisit Server (pcvisit 15.0)

BlueEvidence Services in Elexis

Step by Step Remotedesktopfreigabe unter Windows Server von Christian Bartl

Android Testautomatisierung mit dem Framework Robotium

Umstieg auf Microsoft Exchange in der Fakultät 02

Software-Validierung im Testsystem

BUILDNOTES TOPAL FINANZBUCHHALTUNG

Übung - Konfigurieren einer Windows Vista-Firewall

Windows 98 / Windows NT mit NCP WAN Miniport-Treiber 23. Oktober 1998

BEO-Sanktionsprüfung Eine Einführung zum Thema Sanktionsprüfung und eine Übersicht zur BEO-Lösung.

HP Software Patch- und Version-Notification

Im Netzwerkeinsatz MUSS unbedingt bei jenen Arbeitsplätzen, die mit SC-Line arbeiten, das Arbeitsplatzsetup ausgeführt werden!

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Übung - Konfigurieren einer Windows 7-Firewall

Transkript:

Arbeiten mit Testframeworks Alex Ivchyn Fakultät für Elektrotechnik und Informatik FG Software Engineering Seminar: Testing Today - Moderne Techniken und Tools 16.07.2015

GLIEDERUNG Erklärung der Definition Arten und Klassifikationen von Testframeworks Vorgehen bei der Arbeit mit Testframework Studie Ziele der Studie Durchführung Ergebnisse Fazit Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 2 / 26

Erklärung der Definition Testframework Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 3 / 26

Erklärung der Definition Framework - Ein Framework (englisch für Rahmenstruktur) ist ein Programmiergerüst, das in der Softwaretechnik, insbesondere im Rahmen der objektorientierten Softwareentwicklung sowie bei komponentenbasierten Entwicklungsansätzen, verwendet wird. Im allgemeineren Sinne und nicht als dezidiertes Softwareprodukt verstanden, bezeichnet man mit Framework auch einen Ordnungsrahmen. https://de.wikipedia.org/wiki/framework (24.06.2015) Ordnungsrahmen - Ein Ordnungsrahmen strukturiert ein System, indem es seine einzelnen Elemente umfasst und anhand ihrer Beziehungen untereinander anordnet. In der angloamerikanischen Literatur wird synonym der Begriff business model oder der allgemeinere Begriff framework verwendet. https://de.wikipedia.org/wiki/ordnungsrahmen#cite_note-pons_gro.c3.9fw.c3.b6rterbuch-1 (24.06.2015) Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 4 / 26

Erklärung der Definition Application Framework (Ordnungsrahmen) Domain Class Webframeworks Coordination- Komponenten- Testframework Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 5 / 26

Erklärung der Definition Testframework - dienen zur Ausführung von (automatisierten) Softwaretests, besonders im Rahmen der testgetriebenen Entwicklung. https://de.wikipedia.org/wiki/framework (24.06.2015) Testframework - Ein Testframework ist ein Zusammenschluss von verschiedenen Konzepten und Tools zum automatisierten Testen. Es stellt mehrere Funktionen zur Verfügung, welche dem Benutzer dass automatisierte Testen ermöglichen sollen. Dabei sieht jedes Framework anders aus. Einige werden als allein stehendes Programm benutzt, andere hingegen werden als eigene Applikation in den Server eingebunden. Das Framework legt fest, welche Formate die Tests, sowie die Ergebnis-Dateien haben. https://www.matse.itc.rwth-aachen.de/dienste/public/show_document.php?id=7173 (24.06.2015) Test automation Framework - http://www.ibm.com/developerworks/rational/library/591.html (24.06.2015) A test automation framework is a set of assumptions, concepts, and practices that provide support for automated software testing. Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 6 / 26

Erklärung der Definition Test Framework VS Test Automation Framework Synonym für Synonym für Test Werkzeug Test Tool opensourcetesting.org Beispiele: JUnit, TestNG, Selenium... Ein Satz oder Zusammenschluss von Regeln, Voraussetzungen, Konzepten, Werkzeugen, und anderen Komponenten großteils kommerzielle Lösungen - keine explizite Trennung! Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 7 / 26

Erklärung der Definition Beispiel für Test Automation Framework http://www.zenqconnect.com/services/testautomation.aspx (24.06.2015) Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 8 / 26

Erklärung der Definition Application Framework (Ordnungsrahmen) Domain Class Webframeworks Coordination- Komponenten- Testframework Test Automation Framework Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 9 / 26

Erklärung der Definition Test-Harnisch - In der Qualitätssicherung von Software bezeichnet ein Test-Harnisch (engl. test harness) bzw. Testrahmen eine Sammlung von Software und Testdaten, die zum systematischen automatisierten Testen eines Programms unter verschiedenen Umgebungsbedingungen verwendet wird. Dabei werden sowohl das Verhalten als auch die Ausgabe der Software überwacht und ausgewertet. https://de.wikipedia.org/wiki/test-harnisch (24.06.2015) Testroboter - Testroboter werden in der Softwarequalitätssicherung auch als Capture & Replaybzw. Capture & Playback Tools bezeichnet, die zur Testautomatisierung beitragen. Dabei zeichnet das Werkzeug alle vom Tester manuell durchgeführten Bedienschritte, wie zum Beispiel Tastatureingaben oder Mausklicks, während einer Testsitzung auf. Diese Bedienschritte werden vom Werkzeug in einem Testscript gespeichert. Danach kann der aufgezeichnete Testfall vom Tester automatisch wiederholt abgespielt werden. https://de.wikipedia.org/wiki/testroboter (24.06.2015) Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 10 / 26

Erklärung der Definition Application Framework (Ordnungsrahmen) Domain Class Webframeworks Coordination- Komponenten- Testframework Test-Harnisch Test Automation Framework Testroboter Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 11 / 26

Arten von Testframeworks Test Automation Framework Module Based Testing Framework Hybrid Test Framework Library Architecture Testing Framework Keyword-Driven / Table-Driven Testing Framework Data-Driven Testing Framework Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 12 / 26

Arten von Klassifikationen Interaktion mit SUT Zugriff über die Anwendungslogik FAT FIT FitNesse GUI-basierter Zugriff HP QuickTest Professional IBM Rational Robot Web-basierter Zugriff Selenium Testart Komponententest Junit TestNG Integrationstest Cactus Citrus Framework Fit JUnit Systemtest Cactus Solex Canoo Akzeptanztest Robot Framework HttpUnit http://www.oio.de/j2ee-testtools.htm (24.06.2015) Fortströer, Volker : Automatisierung von User Acceptance Tests in agilen Projekten mit FIT. http://is.uni-paderborn.de/fileadmin/informatik/ag-engels/lehre/ws0809/se/sonstiges/seminar/version1.0/seminar.naq.volker.fortstr%c3%b6er.v1.0.pdf (24.06.2015) Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 13 / 26

Arten von Klassifikationen Testszenarien Lokaler Test Remote Test Verteilter Test wird direkt auf dem Testsystem ausgeführt die Systemparameter werden dort ermittelt und verglichen weitere Systeme im Netzwerk eventuell nötig(nicht vom Testframework kontrolliert oder beeinflusst) Vorteile: lokaler Test wird von einem zentralen System aus gesteuert das System kann auf einem oder mehreren entfernten Systemen die Tests ausfuhren die Ergebnisse zentral auf dem System Vorteile: einen Test auf unterschiedlichen Systemen gleichzeitig Ein Test, der über mindestens zwei Systeme verteilt ist auf beliebigen System installiert und ausgeführt werden können Konfigurationsaufwand minimal Die Ergebnisse können auf dem Testsystem selbst ausgewertet werden Verteilung von unterschiedlichen Tests auf viele Systeme. zentrale Datei mit Ergebnissen Nachteil : Konfigurationsaufwand höher als bei lokalen Tests http://webuser.hs-furtwangen.de/~reich/diplomarbeiten/dathilouttendorfer.pdf (24.06.2015) Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 14 / 26

Vorgehen bei der Arbeit mit Testframeworks Grobe Vorgehensweise anhand von Junit Testphasen: Testplanung Testerstellung Testdurchführung Testauswertung Junit Test Framework (Werkzeug) Annotiere Methoden, die Tests durchführen, mit @Test 2 Formuliere innerhalb dieser Testmethoden die Bedingung für erfolgreiches Testergebnis. Die JUnit-Engine findet per Reflections die annotierten Testmethoden, führt sie aus und zeigt an, ob sie erfolgreich waren oder nicht Beispiel: @Test public void testsum() { double a = 5.6, b = 6.5; assertequals(12.1, calculator.sum(a, b), 0.1); } Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 15 / 26

Vorgehen bei der Arbeit mit Testframeworks Test automation Framework wer testet? (Framework Zweck / Nutzungskonzept ) Test Framework Entwicklung / Umsetzung Umgebungskonfiguration / Setup Framework Pflege Framework Fortentwicklung Eventuell Framework Support Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 16 / 26

Studie - Beschreibung Thema: Hindernisse für automatisiertes Testen - eine empirische Analyse eines User Support Diskussionsforum Fokus Untersuchung von Hindernissen von erfahrenen Benutzern von Testautomatisierung-Framework Forschungsfragen: RQ1: Welche Arten von werkzeugbezogenen Hindernissen treten auf, bei den Benutzern von Testautomatisierung Framework? RQ2: Welche Arten von Hilfe werden von den Benutzern von Testautomatisierung Framework angefordert? Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 17 / 26

Studie - Durchführung Analyseeinheit Testautomatisierung Framework auf der Basis von TestNG mit zusätzlich In-House entwickelten Komponenten Verwaltung von Testdurchführung Speichern von Testergebnissen in DB Verwaltung von Logdateien Kommunikation mit der SUT Kontrolle über Lab-Equipment (Monitoring) Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 18 / 26

Studie - Durchführung Diskussionsforum - Ticket System für die First Line Support Analysedaten Nachrichten aus dem Forum Zeitraum: 25.02.2010 04.01.2013 8796 Beiträge 1656 Themen 189 Benutzer Verteilung ungleichmäßig : top 3 Benutzer 48,6% aller Beiträge Klassifizierung - unter Verwendung der thematischer Analyse Ausgangscode für die Analyse: Thread Typen untersucht durch diese Studie: Problemberichte - Die Ausführung scheitert aus irgendeinem unerwartetem Grund weitere: Hilfeanfragen - eine proaktive Suche nach Wissen Feature Requests Development Info Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 19 / 26

Studie - Durchführung Arten von Problemberichten unbekannte Ursachen IT-Umgebung Benutzerverhalten Zugriffsrechte Netzwerk Konfiguration Ressourcenknappheit Ausfall falsche Forum Problemberichte SUT Test-Script Fehler Benutzerkonfiguration Zugriffsrechte Lab Equipment Werkzeug-Einsatz Framework Aufruf Test Framework Implementierungsfehler Dokumentationsfehler globale Konfiguration Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 20 / 26

Studie - Durchführung Arten von Hilfeanfragen Vorgehen Umdrehung der Definition des Themas in ein Problembericht zusätzlich definierte Themen: API Fragen Code Example Testscript Design Unix Nutzung Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 21 / 26

Studie : Ergebnisse Verteilung von Themen im Forum: 712 (43%) Problemberichte 315 (19%) Hilfeanfragen 530 (32%) Entwicklerinformationen 99 (6%) Feature Anfragen Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 22 / 26

Studie : Ergebnisse Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 23 / 26

Studie : Ergebnisse Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 24 / 26

Zusammenfassung und Fazit Zweck dem Tester zu ermöglichen, seine Testfähigkeiten in effizienter Art und Weise auf die vorliegende Aufgaben anzuwenden Gründe für ein Testframework: Reproduzierbarkeit, Geschwindigkeit, Ressourcen, Zeiteffizienz, Minimierung von Routineaufgaben, Minimierung von Risiken durch menschliche Fehler Gründe gegen ein Testframework: Komplexität und Größe, manchmal viel größer als getestete Software Probleme beim Ansatz von Test Automation : Konfiguration von Testumgebung, Entwicklung von Testskripten Lösung: Umgebungstest Einführung, automatisierte Umgebungskonfiguration (selbstprüfend) Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 25 / 26

Diskussion Vielen Dank für Ihre Aufmerksamkeit! Fragen? Kritiken? Meinungen? Quellen: Wiklund, K. / Sundmark, D. / Eldh, S. / Lundvist, K.: Impediments for Automated Testing -- An Empirical Analysis of a User Support Discussion Board http://www.ibm.com/developerworks/rational/library/591.html (24.06.2015) http://www11.informatik.uni-erlangen.de/lehre/ws1314/pr-swe/folien/foliena9.pdf (24.06.2015) Alex Ivchyn - Arbeiten mit Testframeworks Seminar: Testing Today 16.07.2015 26 / 26