Automatisierung des Tests



Ähnliche Dokumente
Kap. 35 Swing: Grundlagen Kap Swing: Hauptfenster

Testen von graphischen Benutzeroberflächen. 26. Juni 2013

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

Automatisierung des Tests von Java-Swing-GUIs

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

VIP-Programm. Herzlich Willkommen!

virtuos Leitfaden für die virtuelle Lehre

GRAFISCHE BENUTZERSCHNITTSTELLEN

WINDOWS 10 Upgrade. Beispiel: Desktop-Ausschnitt von vorhandenem WIN 8.1 (rechte Ecke der Taskleiste)

1. Software installieren 2. Software starten. Hilfe zum Arbeiten mit der DÖHNERT FOTOBUCH Software

Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI)

Hilfe zur Urlaubsplanung und Zeiterfassung

Proxy. Krishna Tateneni Übersetzer: Stefan Winter

Jahresabschluss Finanzbuchhaltung INGARA. Provisorisch und Definitiv. INGARA Version

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Dokumentation zum Spielserver der Software Challenge

Mastermind. Testplan. Hochschule Luzern Technik & Architektur. Programmieren 2 FS12. Gruppe 10

Inbetriebnahme Profinet mit Engineer. Inhaltsverzeichnis. Verwendete Komponenten im Beispiel:

Quartalsabrechnung! " " " " " " " Stufe 1! Beheben von Abrechnungsfehlern" Stufe 2! Neue Abrechnung erstellen"

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

Integrierte und automatisierte GUI-Tests in Java

ERSTELLEN VON INCENTIVES IM ZANOX NETZWERK

Kurzfassung der Studienarbeit

Digitale Mikroskopie von Carl Zeiss Smart Design - Smart Workflow - Smart Output

Einleitung: Frontend Backend

Testen von graphischen Benutzeroberflächen. 24. Juni 2015

Handbuch. timecard Connector Version: REINER SCT Kartengeräte GmbH & Co. KG Goethestr Furtwangen

BIF/SWE - Übungsbeispiel

Übung: Verwendung von Java-Threads

Automatisierte GUI Tests in fachlichen Teststufen Patrick Möller

Buddy - Algorithmus Handbuch für Endnutzer Stand

Neue Funktionen im GUI für PC-DMIS V3.x 4.x Seite 1 von 8

Die Wasser App.

MetaQuotes Empfehlungen zum Gebrauch von

Kurzanleitung. Nutzung des Online Office von 1&1. Zusammengestellt:

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

ITT WEB-Service DEMO. Kurzbedienungsanleitung

Bedienungsanleitung für den Online-Shop

white sheep GmbH Unternehmensberatung Schnittstellen Framework

ERPaaS TM. In nur drei Minuten zur individuellen Lösung und maximaler Flexibilität.

Internet Explorer Version 6

TREND SEARCH VISUALISIERUNG. von Ricardo Gantschew btk Berlin Dozent / Till Nagel

Anforderungen an die HIS

Präsentation zur Vorstellung meiner Bachelor-Arbeit beim BSE- Seminar. Vortrag von Patrick Bitterling

Software Engineering. Sommersemester 2012, Dr. Andreas Metzger

1 Dokumentenmanagement

ACDSee Pro 3-Tutorials: Hochladen von Bildern auf Ihren ACDSee Online-Account

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI

Schnittstellenbeschreibung zur Importschnittstelle der Vollmachtsdatenbank

DOCU-BOARD C-ENTRON DOCU-BOARD ERSTELLEN SIE EINFACH UND SCHNELL EINE DOKUMENTATION DER NETZWERKUMGEBUNG IHRER KUNDEN

Benutzerhandbuch MedHQ-App

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Anleitung zur Inbetriebnahme einer FHZ2000 mit der homeputer CL-Software

Allgemeiner Leitfaden zum Einfügen suchmaschinenoptimierter Texte

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

Nicht kopieren. Der neue Report von: Stefan Ploberger. 1. Ausgabe 2003

MO1 <logo otra empresa> MO1Sync Installationshandbuch MO1. MO1Sync Installationshandbuch -1-

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

Anleitung über den Umgang mit Schildern

Web-basierte Benutzerschnittstellen für Embedded Systeme: Eine Benutzerschnittstelle drei Sichtweisen

Konfigurationsbeispiel ZyWALL USG

WOT Skinsetter. Nun, erstens, was brauchen Sie für dieses Tool zu arbeiten:

Bilder zum Upload verkleinern

InfoPoint vom 9. November 2011

RIA Architektur ermöglicht globales Garantiemanagement bei Siemens

Sicherung persönlicher Daten

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Kurzanleitung für das IdeaClouds-Whiteboard. 1. Ablauf eines Workshops... S Auf Whiteboard arbeiten... S FAQ.. S. 14

Da ist meine Anleitung drin!

SEP 114. Design by Contract

Schnelleinstieg AUSWERTUNGEN ONLINE (Steuerberater-Version)

Einfach wie noch nie. Der mypackage-ansatz. Ihre Lösung zur automatisierten Client-Bereitstellung. mypackage im Überblick

FORUM HANDREICHUNG (STAND: AUGUST 2013)

Erstellen von x-y-diagrammen in OpenOffice.calc

Der vorliegende Konverter unterstützt Sie bei der Konvertierung der Datensätze zu IBAN und BIC.

Was meinen die Leute eigentlich mit: Grexit?

Testen von grafischen Benutzeroberflächen

Einbindung einer ACT!12-16 Datenbank als Datenquelle für den Bulkmailer 2012

Die Windows 7 Sicherung im Detail

Download, Installation und Autorisierung der Lasergene Software. Bitte unbedingt beachten!

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

Installationsanleitung für FireFTP 1.0.7

SharePoint Workspace 2010 Installieren & Konfigurieren

Objektorientierte Softwareentwicklung

Grundlagen Word Eigene Symbolleisten. Eigene Symbolleisten in Word erstellen

EIDAMO Webshop-Lösung - White Paper

Einführung in PHP. (mit Aufgaben)

firstbird wird gefördert von Microsoft Ventures firstbird is part of Microsoft Ventures Accelerator Berlin

PowerPoint vertonen. by H.Schönbauer 1

Schulung Marketing Engine Thema : Einrichtung der App

macs Support Ticket System

Aktivieren Sie die Checkbox um von jedem Mail eine Kopie an den -absender (gemäss Einstellungen Absender) zu senden.

Die integrierte Zeiterfassung. Das innovative Softwarekonzept

Reservierungs-Assistent

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Mediumwechsel - VR-NetWorld Software

Anschließen und loslegen. Erleben Sie das One Click Wonder.

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Transkript:

Hochschule Furtwangen University Aktuelle Themen der Informatik Automatisierung des Tests von Java-Swing-GUIs von Dominik Jall CN 7

Agenda Einführung Was ist Swing? Warum GUIs automatisiert testen? Werkzeuge und Methoden QftestJUI von QFS Live Demo Quellen Fragen / Diskussion

Einführung Heutige Softwaresysteme werden fast immer über GUIs gesteuert. Selbst shell-basierte UNIX tools verfügen oft über bequeme X-basierte Schnittstellen z.b. traceroute, samba, cups, cdrecord GUIs sind also wichtiger Bestandteil heutige Software Dennoch werden sie nur unzureichend durch Tests abgedeckt

Einführung (2) Vielfältige Interaktionsmöglichkeiten und Grafikelemente Gute Testszenarien sind komplex und schwierig umzusetzen Der Benutzer kommt auf Ideen der Interaktion, die sich kein Entwickler alleine vorstellen kann.

Einführung (3) Zitat Douglas Adams ( Per Anhalter durch die Galaxis ): Ein weitverbreiteter Fehler, den Menschen begehen, wenn sie etwas vollkommen Narrensicheres entwickeln, ist den Einfallsreichtum vollkommener Narren zu unterschätzen.

Was ist Swing? API zur Programmierung von GUIs in Java Gehört zu den JavaFoundationClasses (JFC) Basiert auf AWT (Abstract Window Toolkit) AWT ist jedoch heavyweight Es nutzt OS-spezifische GUI-Elemente Features von Swing Plugable Look-and-Feel Aussehen und Farbthema austauschbar Lightweight, d.h. von Java gerendert u.a. automatisches double buffering

Was ist Swing? (2) Swing eignet sich sehr gut, um wirklich plattformunabhängig zu sein. Swing hat einige sehr nützliche Features wie z.b. Drag & Drop Swing ist sehr objektorientiert aufgebaut und lässt sich gut zum Entwickeln komplexer Software benutzen.

Warum GUIs automatisiert testen? Oft muss die Reaktion der GUI geprüft werden, nachdem nur minimale Veränderung gemacht wurde. Tests müssen ständig (monoton) wiederholt und die Ergebnisse verifiziert werden. Bevor die Nutzer die GUI zu Gesicht bekommen, können die gröbsten Fehler ausgemerzt werden.

Warum GUIs automatisiert testen? (2) Hauptgründe für Automatisierung: Reduktion des manuellen Aufwands Reduktion der Testkosten Breitere Testüberdeckung Reproduzierbarkeit und damit bessere Nachvollziehbarkeit von Fehlern Qualitätsverbesserung

Werkzeuge und Methoden CR-Tools (Capture & Replay) Sind für den Einsatz von Anwendungssoftware konzipiert) Können Nutzereingaben aufzeichnen und wieder abspielen Die Software naturgetreu Eignen sich auch, um Nutzerverhalten aufzuzeichnen und evtl. die GUI entsprechend zu verbessern

Werkzeuge und Methoden (2) CR-Tools zeigen folgende Features: Capture Mode Zeichnet Interaktion des Nutzers auf Jedes Event (klick auf Button, Menü etc.) Programming Mode Die einzelnen Testschritte werden als Skript gespeichert. Sie können später zu ganzen Testsuits zusammengestellt werden.

Werkzeuge und Methoden (3) Weitere Charakteristika: Checkpoints Testen, ob bestimmte Zustände wahr sind (asserts) Können z.b. benutzt werden für GUI-Elemente Datenbankinhalte Grafiken und Texte Replay Mode java.awt.robot simuliert Systemeingaben Testsuite wird abgespielt Reports werden erstellt

Werkzeuge und Methoden (4) Werkzeuge QftestJUI Grafisch und intuitiv zu bedienen (Demo) Marathon Erfasst semantisch Aktionen auf Komponenten, statt sich auf Maus- und Keyboard-Events zu konzentrieren Pounder Kann dynamisch GUIs laden und Skripte für JUnit erzeugen JfcUnit Erweiterung von JUnit. Ermöglicht Unit-Tests mit Swing

QftestJUI von QFS GUI-basiert Kommerziell Bequem zu bedienen Kann Reports in HTML generieren Registriert sämtliche Reaktionen der Anwendung auf die simulierten Aktionen (Exceptions etc.) Kostenlose Evaluierungsversion

QftestJUI von QFS (2)

Live Demo Siehe Flash-Animation

Quellen www.javaspektrum.de de.wikipedia.org www.junit.org www.qfs.de jfcunit.sourceforge.net marathonman.sourceforge.net pounder.sourceforge.net

Fragen?