HP QuickTest Professional 10 Studie über Testautomatisierungswerkzeuge Studie Version: 1.0 Stand vom: 14.04.2015 17:38:00 Status: Freigegeben Autor: Dipl.-Ing. Johannes Hochrainer Dokument-ID: Klassifikation: Intern Software Quality Lab. Alle Rechte vorbehalten. Druckdatum: 14.04.2015
Dokumenteninformation Allgemeines Inhalt DOKUMENTENINFORMATION... 2 Allgemeines... 2 Dokument-Historie... 2 Dokument-Qualitätssicherung... 2 Zweck und Inhalt dieses Dokuments... 2 1. ALLGEMEIN... 3 1.1. Hersteller... 3 1.2. Produktportfolio... 3 1.3. Programmteile... 3 1.4. Unterstützte Schnittstellen... 3 2. SPEZIFIKATION... 5 2.1. Testfallbeschreibung... 5 2.2. Datengetriebene Tests... 7 2.3. Überprüfungen... 8 2.4. Wiederverwendbarkeit... 10 2.5. Robustheit... 10 3. DURCHFÜHRUNG... 12 3.1. Planung... 12 3.2. Schnittstellen... 12 3.3. Verhalten bei Fehlern... 12 3.4. Protokollierung... 14 4. ADMINISTRATION... 16 4.1. Installation... 16 4.2. Integrationen... 16 4.3. Versionsverwaltung... 16 5. ZUSAMMENFASSUNG... 17 ANHANG... 18 Abbildungsverzeichnis... 18 1 / 18
Dokumenteninformation Allgemeines Dokumenteninformation Allgemeines Zusammenhang mit anderen Dokumenten: Diese Analyse ist Bestandteil der Testautomatisierungsstudie von Software Quality Lab. Verteiler: - Dokument-Historie Version Status Datum Verantwortlicher Änderungsgrund / Anmerkungen Dokument-Qualitätssicherung Rolle Name Erreichbarkeit (Org.+Tel.+e-mail) Tätigkeit Datum Unterschrift Autor Johannes Hochrainer erstellt 9. Juli 2009 Prüfer Bernhard Groiss geprüft 23. Juli 2009 Prüfer Benedikt Kiesenhofer geprüft 27. Juli 2009 Freigabe Johannes Hochrainer freigegeben 28. Juli 2009 Zweck und Inhalt dieses Dokuments Dieses Dokument beinhaltet die objektive Analyse eines Testautomatisierungswerkzeugs und soll Interessierten als Entscheidungsgrundlage für die Auswahl eines neuen Werkzeugs dienen. 2 / 18
Allgemein Hersteller 1. Allgemein 1.1. Hersteller QuickTest Professional gehört seit vielen Jahren zu den Marktführern im Bereich der Testautomatisierung von GUI-Anwendungen. Der ursprüngliche Hersteller, die Firma Mercury Interactive, wurde 2006 von Hewlett Packard (HP) übernommen. Seither wird an der Integration in andere HP-Produkte sowie an der Ausweitung der Funktionalität gearbeitet. 1.2. Produktportfolio HP bietet unter dem Begriff Business Technology Optimization (BTO) eine Vielzahl von Werkzeugen für die Verbesserung und Sicherstellung von Softwarequalität. Im Bereich der Testautomatisierung sind hier neben dem in dieser Studie vorgestellten Werkzeug QuickTest Professional noch das Lasttestwerkzeug LoadRunner und das Testmanagementwerkzeug Quality Center und im Bereich Security bzw. Performance das Werkzeug QAInspect (WebInspect) hervorzuheben. 1.3. Programmteile Abhängig von den verwendeten GUI-Technologien, müssen mit QuickTest verschiedene Addins installiert werden. Sie sind im Installationspaket enthalten, verursachen keine extra Kosten und lassen sich auch im Nachhinein installieren. Neben dem Hauptprogramm QuickTest Professional werden noch einige weitere Programme mitinstalliert. Hier eine Auswahl: HP Micro Player spielt Videos ab, die während der Testdurchführung aufgezeichnet wurden Password Encoder verschlüsselt Passwörter. Sie werden erst während der Testdurchführung von QuickTest decodiert. In den Testfällen sind somit nicht die echten Passwörter auf den ersten Blick auslesbar. Der QuickTest Script Editor ist eine Entwicklungsumgebung für die Erstellung von Funktionsbibliotheken. Mit dem Remote Agent lassen sich Testfälle auf anderen Computern ausführen. Eine Sequenz von gemeinsam auszuführenden Testfällen kann mit dem Test Batch Runner erstellt werden. Die Analyse von Testprotokollen ist die Aufgabe des Test Results Viewer. Zur Erkennung von benutzerdefinierten Steuerelementen gibt es für die Technologien.NET, Delphi, Java und Web eigene Erweiterungspakete. 1.4. Unterstützte Schnittstellen QuickTest unterstützt eine Vielzahl von Testschnittstellen. Sie sind in einer 14-seitigen Matrix dokumentiert. Hier ein Auszug: Microsoft Windows 2000, XP, 2003, Vista, Server 2008 (jeweils 32 und 64 Bit) Virtualisierung: VMWare, Virtual PC, Citrix Meta Frame Presentation Server 3 / 18
Allgemein Unterstützte Schnittstellen Browser: MS Internet Explorer, Netscape, AOL, Mozilla Firefox ActiveX-Controls Delphi Java (AWT, Swing, SWT).NET: Windows Presentation Forms, WinForms, WebForms Windows Presentation Foundation (WPF) Oracle (Oracle Forms, E-business Suite, ) PeopleSoft (PeopleTools, Client Modules) Powerbuilder SAP (GUI Client, Web Client, ECATT, Portals, Workplace, ICWC, ) Siebel Stringray Terminal Emulator (verschiedene Clients) VisualAge WebServices Hervorzuheben ist, dass auch WebServices mit QuickTest getestet werden können. Nach dem Import der WSDL-Datei helfen Assistenten bei der Erstellung von Web Service Anfragen (XML) und der Analyse der Antworten. Auch Datenbankoperationen sind über ODBC Datenquellen möglich. 4 / 18
Spezifikation Testfallbeschreibung 2. Spezifikation 2.1. Testfallbeschreibung Schon der Splash Screen von QuickTest kündigt mit Advanced Keyword-Driven Testing an, wie Testfälle spezifiziert werden. Durch Keyword-Driven Testing werden Testfälle wiederverwendbar, robust gegen Änderungen in der SUT 1, lesbarer und leichter wartbar. Abbildung 1 - Testspezifikation Abbildung 1 zeigt ein Beispiel für die Testspezifikation. Auf der linken Seite lässt sich der Testfall in verschiedene Aktionen unterteilen. Jede Aktion lässt sich parametrisieren und in anderen Testfällen wiederverwenden. Durch die Anbindung an eine Datenquelle ist auch datengetriebenes Testen möglich. Hinter jeder Aktion steht eine Sequenz von Interaktionen mit der SUT. In unserem Beispiel sind diese im Mittelteil der Abbildung dargestellt (Keyword View). In den vier Spalten wird ausgedrückt, was bei der Testdurchführung gemacht werden soll: Item: Hier werden die Steuerelemente hierarchisch strukturiert dargestellt. Hat beispielsweise eine Seite mehrere Eingabefelder, so würden diese Felder als dessen Unterelemente angezeigt. 1 System Under Test 5 / 18
Spezifikation Testfallbeschreibung Die Spalte Operation dient zur Bestimmung, welche Interaktion Steuerelement gemacht werden soll. Das Drücken eines Buttons, der Klick mit der Maus, oder das Abfragen eines Wertes sind einige Beispiele dazu. Die dritte Spalte, sie trägt die Bezeichnung Value, dient schließlich zur Bestimmung der Daten. Abhängig von der gewählten Operation können unterschiedlich viele Daten bestimmt werden. Neben konstante Eingabedaten lassen sich auch Referenzen zu Datenquellen, Umgebungsvariablen und Zufallswerte angeben. Die letzte Spalte erlaubt die Dokumentierung der Interaktion. Hinter dieser auch für Nicht-Techniker lesbaren Testspezifikation steht ein Automatisierungsscript (Expert View), wie es auch in Abbildung 2 dargestellt ist. Besonders bei komplexeren Kontrollstrukturen kann das direkte Arbeiten am Script hilfreich sein. Häufig verwendete Funktionen sind in Funktionsbibliotheken ablegbar und Testfall übergreifend verwendbar. Abbildung 2 - Automatisierungsscript Vergleicht man den Keyword View mit dem dahinterliegenden Script (Expert View), so kann man folgende Ähnlichkeiten erkennen: Die Spalte Item im Keyword View repräsentiert das, was in der Programmierung als Objekt bezeichnet wird. Operation entspricht folglich einer Funktion und Value deren Ein- und Ausgabeparameter. Die Programmierung des Scripts erfolgt mit Visual Basic. Der eingebaute Editor verfügt über Autovervollständigung, Syntax Highlighting und Syntax Check (Abbildung 2). Die Hauptarbeit bei der Testspezifikation wird aber im Keyword View gemacht. Verschiedene Assistenten unterstützten den Benutzer, die mit Capture/Replay aufgezeichneten Interaktionen zu überarbeiten und zu erweitern. So hilft etwa der Step Generator dabei, neue Schritte einzufügen. Ein weiterer Assistent wandelt statische in dynamische Eingabeparameter (z. B. datengetrieben) um. Auch Überprüfungen (Check Points), Kontrollstrukturen (Schleifen, Bedingte Ausführungen) und Zeitmesser lassen sich ohne Programmierkenntnisse einbauen. Änderungen in einen der beiden Ansichten werden automatisch mit der anderen Ansicht synchronisiert. In beiden Views ist auch ein Debugger verfügbar.. Die Testsequenz kann bis zu einem Haltepunkt oder ab einem Haltepunkt abgespielt werden. Trotz der Vielzahl von unterstützten Technologien kann es vorkommen, dass einzelne Steuerelemente nicht erkannt werden, wie z. B. bei selbst implementierte Steuerelementen. Um auch diese anzusteuern, bietet QuickTest Professional eine eigene Lösung: virtuelle Objekte. Handelt es sich beim nicht erkannten Steuerelement um ein Objekt, dass das 6 / 18
Spezifikation Datengetriebene Tests Verhalten eines Buttons, Tabelle, Liste, Check Box oder Radio Button hat, kann es QuickTest auch als solches behandeln. Zuerst wählt man das nicht erkannte Objekt aus und teilt QuickTest mit, welches Verhalten man von diesem Objekt erwartet. Erwartet man etwa das Verhalten einer Tabelle, bestimmt man die Anzahl der Reihen und Spalten und zieht schließlich einen Raster über das noch unbekannte Objekt. QuickTest erzeugt danach ein virtuelles Objekt, dass nun alle Funktionen anbietet, die man von einer Tabelle erwartet, z. B. Auswahl von Zeilen und Spalten. Der beste Weg selbst programmierte Steuerelemente in QuickTest zu verwenden führt aber über die Extensibility SDK. Diese gibt es für drei Technologien: Java,.NET und Web. Im Falle von Java bietet QuickTest ein Plug-in für Eclipse. Die Programmierung der Ansteuerung von eigenen.net-steuerelemente ist hingegen in Microsoft Visual Studio vorgesehen. Hinter dem Extensibility SDK für Web-Steuerelemente verbirgt sich die Erkennung von ASPAjax, wie z. B. ASPAjaxCalendar, ASPAjaxTabs usw. Praktisch bei der Erstellung von Testfällen ist die To Do Liste. Für jeden Testfall lassen sich so offene Tätigkeiten protokollieren und nachverfolgen. Ein Eintrag umfasst dabei folgende Informationen: Kurzbezeichnung, Beschreibung, Erstellungsdatum, Autor, zuständige Person, Priorität und Fertigstellung. 2.2. Datengetriebene Tests Die Erstellung von datengetriebenen Testfällen ist benutzerfreundlich umgesetzt. Nach der Auswahl eines Parameters im aufgezeichneten Testfall öffnet sich ein Assistent. Darin lässt sich der Parameter in wenigen Schritten mit einer Spalte einer Tabelle verbinden. QuickTest hat ein eigenes Tabellenkalkulationsprogramm integriert. Sowohl für den ganzen Testfall, als auch für jede einzelne Aktion (Keyword) wird automatisch ein eigenes Tabellenblatt angelegt. Auf Funktionen, wie man sie etwa von Microsoft Excel gewöhnt ist, muss man nicht verzichten. Es sind Referenzen, Berechnungen sowie Funktionen vorhanden. Eine Datenquelle kann nicht nur Eingabewerte liefern, sondern es können auch Daten, die während der Testdurchführung entstehen und darin gespeichert werden. Auch Eigenschaftswerte, anhand denen QuickTest Objekte erkennt, lassen sich an Datenquellen knüpfen. Ein Beispiel für die Umwandlung eines statischen Eingabeparameters in einen dynamischen wird in Abbildung 3 gezeigt. Der Wert für das Eingabefeld Password wird hier mit der Tabellenspalte password verbunden. 7 / 18
Thank you very much for downloading a public preview of our well known and highly appreciated tool studies. If you re interested in reading the whole document just apply here and request the document you want to read from our comprehensive set of studies already available. For further information on our tool studies visit our web site. Or, you can always use the following form to request the studies you want to read. Seite 1 von 2
Bestellformular für Tool-Studien/Order form for tool studies An/to Software Quality Lab GmbH Gewerbepark Urfahr 6 4040 Linz AUSTRIA Bitte ausgefüllt per Email an/ Please fill out and send to info@software-quality-lab.com Name/full name: Adresse/address: Firma/company: Email/email: Funktion/role: Telefon/phone: / [bitte füllen Sie die Daten vollständig und korrekt aus/please supply correct and complete data] Bestellliste/Order list [bitte kreuzen Sie die gewünschten Tools an/please select the tool studies] ALM, RM IBM Rational Requirements Composer 4.0.2 Jama Contour 3.61 NEU! Micro Focus Borland Caliber Microsoft Team Foundation Server 2013 Polarion ALM 2014 HP ALM 11 VersioneOne 13.0 Visure Solutions IRQA 4 Test Management Imbus TestBench 1.6.1 Micro Focus SilkCentral 2008 Microsoft VSTS 2010 Mozilla Testopia 2.1 Orcanos QPack 5 Polarion ALM 20121 NEU! Siemens SiTEMPPO 5.8 TestLink 1.9.12 Seapine TestTrack 2012 Static Code Analysis SonarQube 4.5 GUI Test Automation Appium 1.2.2 Bredex GUIdancer 4.2 HP UFT Professional 10 IBM Functional Tester 8.1.0.3 Microsoft VSTS 2010 QF-Test 3.5.1 NEU! Ranorex 3.3 SAP ecatt Selenium 2.0 SmartBear TestComplete 9.3 SmartBear SoapUI 5.1 Weitere Informationen auf unserer Website www.software-quality-lab.com. Embedded Systems LDRA 8.0 Razorcat Tessy 2.6 Load/Performance Apache JMeter 2.8 Grinder 3.4 HP LoadRunner 9.5 Neotys Neoload 3.0.3 SmartBear LoadUI 2.8.0 Unit Tests Google Test 1.5 JUnit 4.11 NUnit 2.5.7 Die Toolnamen und eingetragenen Warenzeichen sind Eigentum der jeweiligen Toolhersteller/Tool names are property of tool vendors. Die Studien sind grundsätzlich auf Anfrage frei erhältlich. Software Quality Lab behält sich jedoch vor, die Aufwände für gewisse Branchen und Privatpersonen in Rechnung zu stellen (z.b. Beratungsfirmen, Toolhersteller usw.) Studenten erhalten die Studie zum halben Preis/All studies are basically free, except for certain branches of industry or private persons, for whom we invoice at cost. Students get a discount of 50%. Seite 2 von 2
Tool Evaluation Center Efficient, goal-oriented and professional tool evaluation Unique in Europe What is TEC? The Tool Evaluation Center (TEC) is a neutral environment for evaluating software tools related to software development, through which you will receive a detailed, vendorindependent overview of the suitability of different tools for your software projects. Your Partner for software quality and testing Consulting Implementation Training Automation Evaluation Software Quality Lab is your competent partner in software quality and testing and one of the leading independent consulting companies in Austria. We specialize ourselves in the improvement of efficiency, quality and security in the fields of software development and system processes. All tools in TEC are up to date, installed and configured, furnished with examples and ready for demonstration. Practical work and getting to know the tools in a handson manner is also possible. Your Benefit EETime-saving: Tool selection in a few days. No time-consuming research and product requests, no installation and testing. EEPreparation of information for different target groups from technicians to the managing board. EESupport provided by specialists, ranging from requirements through to a proof of concept or a pilot project. Our services around the tool selection Tool categories in the TEC EEApplication Life Cycle Management EERequirements Management EETest Management EEGUI Test Automation EETest Data Management EEComprehensible decision criteria: Using special techniques we evaluate the tools together with you, basing on your requirements as a foundation for your investment decision. EELarge selection and direct comparison of products ranging from market leaders through newcomers to open source software and freeware. Linz / Vienna / Graz / Lustenau / Munich Requirements elicitation, Creating a list of criteria Tool review, Pre-selection of tools, Practical getting to know the tools in the TEC Workshop with 3-5 suitable tools, Proof of Concept, Planning and implementing the pilot project Integration with other tools Tools in TEC www.software-quality-lab.com Our TEC includes more then 40 installed tools from reputable manufacturer (e.g. IBM, HP, Micro Focus, Microsoft, Polarion, Siemens) as well as interesting newcomer products and alternatives from the open source area (e.g. JMeter, Selenium). Further details can be found at www.tool-evaluation.com. V. 2011-12 Software Quality Lab GmbH info@software-quality-lab.com www.software-quality-lab.com