ATOS Weiterentwicklung GUI-Capture nach dem WinRunner Konzept Lösung des Timing-Problems.

Slides:



Advertisements
Ähnliche Präsentationen
Be.as WEB Technologie
Advertisements

Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
Stud.ip - Was ist das?! Kleiner Leitfaden für die ersten Schritte im System.
Suche in Texten (Stringsuche )
Seminar Internetdienste Web 2.0 und Rich Internet Applications (RIA) JavaFX Rainer Scholz.
Christian A. Kopf Institut für Informatik FU Berlin Episode Recognizer Framework - Rahmenwerk zur Episodenerkennung.
On a Buzzword: Hierachical Structure David Parnas.
Objektorientierung mit VBA
FH-Hof Einbindung von JavaScript Anweisungen
Java: Objektorientierte Programmierung
FH-Hof Grammatiken Richard Göbel. FH-Hof Begriffe Eine Grammatik definiert die Struktur (Syntax) einer Zeichenkette Eine Grammatik definiert nicht die.
Sortierverfahren Richard Göbel.
Java: Grundlagen der Sprache
Colibi Bibliothekssystem der Computerlinguistik. Einführung Motivation Was braucht Colibi? Software Datenbankdesign.
Die Skriptsprache Lua Softwaretechnologie II.
Wie wird eine XML DB eingabeintuitiv? Nachteile einer XML-Struktur: leicht entstehende Syntaxfehler mangelnde Übersicht.
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Oracle PL/SQL Server Pages (PSP). © Prof. T. Kudraß, HTWK Leipzig Grundidee: PSP – Internet-Seiten mit dynamischer Präsentation von Inhalten durch Einsatz.
Eine objektorientierte Einführung in den Umgang mit Datenbanken
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher bekannt: Einfache Variable Feld Vereinbarung Zuweisung Block while-Schleife Bedingte Anweisung (if) Typ.
Sicherheit von mobilem Code Hauptseminar: Sicherheit in vernetzten Systemen Sicherheit von mobilem Code Oliver Grassow.
Einführung in Visual C++
Weiteres Programm Studium des Breitendurchlaufs Hierzu
PHP Pakete und Beispiele Webengineering Robert Lemke.
FH-Hof HTML - Einführung Richard Göbel. FH-Hof Komponenten des World Wide Webs WWW Browser HyperText Transfer Protocol (HTTP) via Internet WWW Server.
Welche Funktion hat die php.ini? -Beinhaltet wichtige Einstellungen für PHP. Genannt seien hier u.a. der Speicherort von Cookies, Parameter der Kompilierung,
1 IntegraMouse - Erlaubt es dem Benutzer, mit dem Mund alle Funktionen einer Computermaus zu aktivieren. - Die dynamische Positionierung des Bildschirmzeigers.
Intrusion Detection Systems
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
SQL PHP und MySQL Referat von Katharina Stracke und Carina Berning
Java programmieren mit JavaKara
Ein Toolkit für hierarchische Bibliotheksdaten Ein Toolkit zur Präsentation von hierarchischen Bibliotheksdaten Andres von Arx UB Basel, August 2006.
DNS Domain Name System oder Domain Name Service
Excel 97 Einführung - Start -.
Projektarbeit PHP 5.3 / MySQL & Content Management Systems
Einführung in die Programmiersprache C 3.Tag Institut für Mathematische Optimierung - Technische Universität Braunschweig.
Flexible Datenstrukturen
Erstellen einer Webseitenstatistik mithilfe eines OLAP-Servers
Erstellen einer Webseitenstatistik mithilfe eines OLAP-Servers
Cooperation unlimited © Zühlke Juni 2009 Hansjörg Scherer Folie 1 Cooperation unlimited TFS als BackEnd für Visual Studio und Eclipse.
Einführung in die Programmiersprache C 4
Vom Umgang mit Daten. public void myProgram() { int[] saeulenWerte = new int[world.getSizeX()]; for (int i = 0; i < saeulenWerte.length; i++) { saeulenWerte[i]
Hallo Ich möchte einen Text einer Folie nicht einfach nur einfliegen lassen, sondern genau diesen Text, der schon an einer bestimmten Stelle steht, vergrößern.
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
EP Media Group SiteKist CMS Version 6.9. ©2014 EP Media Group Internet:
Zeit:Aktion: 08:30Begrüßung, Organisation 08:45Einführung - Was heißt OPC - OLE for Process Control --> Folie - OPC definiert eine offene Schnittstelle,
Grundlagen von Objekt-Pascal Erstellt von J. Rudolf überarbeitet von H.Brehm.
C-Einstieg. Agenda 1Vorbereitung 2Aufbau eines Programms 2.1Header 2.2 Methoden 2.3Main 3Datentypen & Variablen 4Operatoren(+, -, *, /) 5Logik 5.1IF 5.2Switch.
Oliver Spritzendorfer Thomas Fekete
Von Isabelle Spörl und Simon Schausberger
PL/SQL - Kurze Einführung April 2003Übung Data Warehousing: PL/SQL 2 PL/SQL.. ist eine Oracle-eigene, prozedurale Programmiersprache Sämtliche.
Einführung in PHP.
Einführung in PHP 5.
Aufzeichnung von Usability-Daten im www. Client-Side Log : automatisch (maschinell) generiertes Protokoll Client : Rechner mit dem Browser des Users Server:
Programmieren in C Grundlagen C 2
PHP: Operatoren und Kontrollstrukturen
Vortrag: Frames & Javascript.
Installation, Konfiguration, Online stellen, Zugriff © by Lars Koschinski 2003.
Windows 2000 Advanced Server
(Syntax, Strings/Zahlen, Variablen, Arrays)
Programmiersprache PASCAL
Programmiersprachen II Fortsetzung Datenstrukturen Hashing Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
© 2003, Rudolf Jansen Einsatz der XML-Features der Oracle 9i DB zur Systemintegration Rudolf Jansen Freiberuflicher Entwickler und Autor
Excel-Tool: Beschwerdeanalyse  Folie 1 von Bitte Makros aktivieren Das Excel-Tool funktioniert nur mit eingeschalteten Makros. Eventuell erhalten.
By Thorsten Zisler 1 SQL Datenbank Anbindung an den Supervisor.
© Tobias Bäuerle, Virtuelle Präsenz WS10/11, Uni Ulm Übung Second Life Techniken.
Einführung in die Programmierung
The Programming Language Pascal
 Präsentation transkript:

ATOS Weiterentwicklung GUI-Capture nach dem WinRunner Konzept Lösung des Timing-Problems

ATOS Weiterentwicklung Andreas Hirth WinRunner Screenshot

ATOS Weiterentwicklung Andreas Hirth WinRunner Testverfahren GUI-Capture & Playback –Analoges Verfahren jede Mausbewegung, jeder -klick und jeder Tastendruck werden erfasst keine Rücksicht auf Umgebung und Systemzustand + jede Nutzeraktion lässt sich simulieren - unflexibel schon gegenüber geringen Änderungen - entstehendes Skript nicht editierbarentstehendes Skript

ATOS Weiterentwicklung Andreas Hirth WinRunner Testverfahren GUI-Capture & Playback –Kontextsensitives Verfahren Mausklicks und Tastatureingaben werden in Relation zum aktiven Fensterelement interpretiert Die Fensterelemente werden dazu eindeutig identifiziert (z.B. über ihre Bezeichner) für jeden Elementetyp stehen die möglichen Aktionen zur Verfügung + Interaktion mit den Fensterelementen funktioniert unabhängig von ihrer Position + entstehendes Skript ist editier- und erweiterbarentstehendes Skript - Nicht-Standardelemente können nicht ohne weiteres angesprochen werden

ATOS Weiterentwicklung Andreas Hirth WinRunner Testverfahren Checkpunkte –werden an beliebiger Stelle im Skript eingefügt –Inhalt von diversen Fensterelementen überprüfen Controls Text Bilder (Screenshot wird mit Referenzbild verglichen) Datenbankinhalte Datumsangaben Tabellen

ATOS Weiterentwicklung Andreas Hirth WinRunner GUI Map GUI Map –kommt beim kontextsensitiven Verfahren zum Einsatz –den Identifikatoren für Controls und andere Fensterelemente können frei wählbare Bezeichner zugewiesen werden, die dann in den Testskripten zum Einsatz kommen – + sollten sich Identifikatoren ändern, ist nur eine Modifikation der GUI Map nötig – die Testskripte bleiben unbeeinträchtigt

ATOS Weiterentwicklung Andreas Hirth Vergleich WinRunner GUI Map - ATOS GUI Map –systeminterne IDs der Elemente des Zielprogramms werden zur Laufzeit ermittelt –systeminternen IDs können aussagekräftige Bezeichner zugeordnet werden ATOS RC-Parser –Einlesen der IDs aus den Ressourcen der IDE –Zuordnung von aussagekräftigen Bezeichnern – automatisch oder manuell

ATOS Weiterentwicklung Andreas Hirth WinRunner TSL TSL (Test Script Language) –Programmiersprache Variables and Constants Operators and Expressions Statements Control Flow Arrays Input-Output Comments Built-in Functions User-Defined Functions External Function Declarations

ATOS Weiterentwicklung Andreas Hirth Vergleich WinRunner TSL – ATOS HTS HTS –sequenzielle Abarbeitung von Funktionen zur Testskript-Steuerung TSL –Variablen, einfache und komplexe Datentypen –Funktionen –Strukturen (if, for, while) –oo-Konzept

ATOS Weiterentwicklung Andreas Hirth Fazit WinRunner ↔ ATOS Vorteile von WinRunner gegenüber ATOS –GUI-Capture Verfahren zur Testskripterstellung –umfangreiche Testmöglichkeiten Test von allen Fenster-Elementen –selbst entworfene Elemente können WinRunner „bekannt gemacht“ werden Test von Datenbanken Test von Screenshots –mächtige Skriptsprache TSL Nachteile von Winrunnner gegenüber ATOS –Preis

ATOS Weiterentwicklung Andreas Hirth Techniken zur Realisierung des GUI-Capturing Zugriff auf das aktive Fenster –Windows API Funktionen für den Zugriff auf das aktive Fenster und alle Kinder-Fenster Informationen über Fensterelemente –Typ des Elements über Abfrage der Objektklasse zu ermitteln –typ-spezifische Windows-Nachrichten erlauben die Abfrage von Zustandsinformationen Abfangen der Nutzeraktionen –globale Message-Hooks erlauben das Mitschneiden und ggf. Ändern von Ereignissen für das Zielprogramm –Ereignisse können den Hook vor dem Zielprogramm erreichen – Neutralisierung u.U. möglich

ATOS Weiterentwicklung Andreas Hirth ATOS Timing Problem –Auf verschieden performanten Rechnern läuft das Zielprogramm unterschiedlich schnell. In Testskripten werden Wartezeiten definiert, innerhalb derer eine bestimmte Reaktion des Zielprogramms erwartet wird. Diese Zeiten müssen je nach Performance des verwendeten Rechners variabel sein. Lösung –Einführung einer neuen Zeiteinheit, deren Umrechnung in Millisekunden über einen kleinen Benchmark bestimmt wird (z.B. Berechnung der ersten x Primzahlen) –Die Umrechnung könnte beim Start von ATOS bestimmt werden

ATOS Weiterentwicklung Ende

ATOS Weiterentwicklung Andreas Hirth WinRunner Skript Analoges Verfahren move_locator_track (1); # eine Mausbewegung mtype (" - +"); # linker Mausklick move_locator_track (2); # eine Mausbewegung type (" Malte Kroeger"); # Tastatureingabe move_locator_track (3); # eine Mausbewegung mtype (" - +"); # linker Mausklick type (" MyPassword"); # Tastatureingabe move_locator_track (4); # eine Mausbewegung mtype (" - +"); # linker Mausklick move_locator_track (5); # eine Mausbewegung mtype (" - +"); # linker Mausklick zurück

ATOS Weiterentwicklung Andreas Hirth WinRunner Skript Kontextsensitives Verfahren # Fenster aktivieren set_window ("Login", 1); # Felder eintragen edit_set ("Login Name:", "Malte Kroeger"); password_edit_set("Password:", "kxdudzctbyctfyksizmt"); # Aus Domain-Liste "Central Server" auswaehlen (2. Eintrag) list_select_item ("Domain:", "Central Server"); # Item Number 2; # Multi User Mode aktivieren button_set ("Multi User Mode", ON); # Security Level auf High (100%) stellen scroll_drag_from_min ("Security Level", HSCROLL, 100); # 100%; # "Remember Settings" aktivieren button_set ("Remember Settings", ON); # "Login"-Button druecken button_press ("Login"); zurück