Werkzeug |
Anbieter |
Zuletzt durch mich betrachtete Version und deren Nützlichkeit (meiner Erfahrung nach): | ||
| ||||
BrowserStack | BrowserStack | Automated mobile app testing on real mobile devices.
Here you'll find everything you need to test and debug your native, hybrid and web applications on real devices and desktop browsers. | ||
TestProject | Open Tools | TestProject is a free SaaS test automation development framework designed for agile teams! It is built on top of industry standard open source tools, supports all major operating systems, and most importantly it enables a team first approach to test automation that makes it easy for every member of your software team to test Web, Android and iOS apps effortlessly. Using TestProject’s testing repository, teams can easily collaborate, all while locally creating, running and analyzing their test automation. TestProject's mission is to create a powerful and collaborative environment that the entire test automation community can use without any barriers, including the barrier of cost. | ||
JEST | Open Source | Dient dem Test von in JavaScript geschriebenen Web Frameworks | ||
T-Plan Robot Enterprise | T-Plan | T-Plan Robot Enterprise 3.3 (2013) ist an keine bestimmte Plattform gebunden und als einziges aller hier besprochenen Werkzeuge auch geeignet,
Apps zu testen, die auf Android, iPhone, Windows Mobile, etc. arbeiten.
Genau dieser Eigenschaft wegen erscheint es hier an erster Stelle. Typischerweise entwirft man Testcases, indem man sie per Recorder aufzeichnet und das so entstandene Skript dann von Hand geeignet ergänzt. Es kann dann sogar — automatisch — nach Java umgewandelt werden und so recht gut auch zu Testtreibern für Unit Test führen. T-Plans Skriptsprache ist proprietär, aber ebenso mächtig wie VBScript. T-Plan entstand aus dem Open Source Produkt VNC Robot, dessen letzte Version als T-Plan Robot 2.0.8 immer noch verfügbar ist. | ||
Robotium | Open Source | Robotium is an Android test automation framework that has full support for native and hybrid applications.
Robotium makes it easy to write powerful and robust automatic black-box tests for Android applications.
Robotium Recorder will allow you to record Robotium test cases in minutes! Zur Einführung lese man Android user interface testing with Robotium (vom Recorder ist darin noch gar nicht die Rede). Noch interessanter ist die Übersicht How to test Android applications with different Android testing frameworks. Entwickler von Android Apps wird interessieren: Unit Test with Android Studio. Lies auch: The Top 5 Android UI Frameworks for Automated Testing (2017). | ||
Visual Studio | Microsoft | VS 2012 (erst ab der Premium Variante) unterstützt sog. Coded UI Test.
Man nutzt dazu die .NET 4.5 Bibliotheken unter C# oder VB.NET. Solcher Test führt Aktionen auf der GUI der Anwendung aus mit dem Ziel,
korrekte Darstellung ihrer Oberflächenelemente nach Form und Inhalt prüfbar zu machen. Auch Testfall Recording und Umwandlung manueller Tests in automatisierten Test wird unterstützt. Coded UI Test kann datengetrieben sein, denn Studio 2012 bietet die Möglichkeit, dem Testtreiber eine Datenquelle mitzugeben, so dass jede ihrer Zeilen zu einer Iteration (Ausprägung) des logischen Testfalls wird. Auf Basis solcher Treiber kann zudem Last- und Stresstest gefahren werden sowie Load Test mit der Möglichkeit, viele gleichzeitig arbeitende Benutzer zu simulieren, die HTTP-Requests gegen einen beliebigen Web Server absetzen. | ||
RESTEasy | Open Source | Da web-basierte APIs schon in naher Zukunft wohl nur noch REST-basierte Architektur haben werden, sollte man wissen,
dass ein frei nutzbares Framework zur Verfügung steht, den Test solcher Schnittstellen per Java zu automatisieren: RESTEasy (von JBoss, aber nicht gebunden an deren Application Server:
siehe diese Doku). Wer seine Testtreiber lieber in C# (.NET) schreibt, benutze das noch einfacher zu verstehende Paket RestSharp. | ||
SpiraTest | Inflectra | Wer sich seine gesamte Testumgebung in der Cloud verwaltet wünscht, für den könnte SpiraTest
in Kombination mit SpiraTeam interessant sein (siehe
auch die Preislisten dazu). Ich selbst hatte bisher keine Gelegenheit, mit dieser Umgebung und ihren Automatisierungswerkzeugen Rapise und Remote Launch zu arbeiten. Wie der Hersteller selbst sie charakterisiert, ist nachzulesen in der recht ausführlichen Präsentation SpiraTest Overview — was ich da lese, scheint mir interessant und auf jeden Fall einer Evaluierung wert. | ||
Selenium | Open source | Selenium unterstützt den Test von Web-Applikationen über deren GUI, und somit die derzeit und in absehbarer Zukunft sicher wichtigste Klasse von Test aus Sicht der Endanwender. Interessant ist, dass Google zunehmend mehr nach Selenium, denn QTP gefragt wird (was, obgleich QTP teuer, Selenium aber frei ist, nicht gerade für ein Nischen-Dasein von Selenium spricht). Wer mit Selenium Webdriver einen ersten nicht ganz trivialen Testfall automatisiert hat, wird dieses Werkzeug als einfach und nützlich erkennen. Spezielle Mechanismen zur Unterstützung von SOAP und WSDL finden sich darin allerdings nicht. Schade ist auch, dass IWebElement keine Methode get_OuterHTML() kennt. ISelenium scheint das mächtigste Interface zu sein (gut dokumentiert in WebDriver.chm für C#, VB, C++). Oft aber reicht es, nur die besonders einfachen Interfaces IWebDriver (repräsentiert den Browser) und IWebElement (repräsentiert je ein HTML Elemente) zu nutzen. Mit dem Selenium-Firefox-Plugin lassen sich Testabläufe aufzeichen, die man – auch modifiziert – dann jederzeit neu starten kann. Links: Selenium — Tutorials and Blogs [1] + BrowserStack on Selenium [N] [2] [3] [4] [5] [P] [J] [H] [6] [s] Siehe auch: Selenium RefCard (2016) Siehe auch: Selenium Tutorials + weitere Siehe auch: Selenium im Robot Framework Siehe auch: Selenium aus VBScript aufrufen Siehe auch: Selenium Cookbook — ein sehr hilfreiches Buch Siehe auch: Selenium via Python Selenium ist auch verfügbar als Cloud Service (wer ihn nur gelegentlich nutzen möchte, kann das i.A. sogar kostenfrei tun). Dieser Service hat ein REST API. | ||
Katalon Studio | Katalon | Katalon Studio — derzeit (2019) kostenlos erhältlich — unterstützt sehr gut das Testen web-basierter Applikationen —
siehe Overview —
und ist u.A. auch Wrapper um Selenium.
Katalon Studio is an all-in-one solution to support testers with limited technical knowledge. Katalon is hiding all technical complexities behind the scene and provides friendly UI with the manual mode (user can drag-drop, select keywords and test objects to form test steps), but still keeps necessary weapons for users who are able to dig deeper into coding with the scripting mode that fully supports development conveniences like syntax highlighting, code suggestion and debugging. Katalon Studio has the capability to record and generate test scripts on both Web and mobile apps. Katalon Studio is certainly helpful because Selenium and Appium are mainly automated testing platform libraries suitable for testers who possess good programming skills and can use an IDE like Eclipse or Visual Studio to import Selenium & Appium libraries (and their dependencies) into a development project, to install necessary unit testing frameworks like JUnit, NUnit and TestNG before starting to write a test case. Lies auch, wie sich Katalon Studio mit seinem kleineren Bruder Katalon Recorder vergleicht. Einen guten Eindruck davon, wie sich z.B. für eine größere Mengen von Microservices per Katalon eine gut wartbare Test Suite aufbauen lasst, gibt Data Driven Test. Katalon ist problemlos erweiterbar durch selbstgeschriebene Java Classes. Galt früher UFT (= QTP) als das mit Abstand nützlichste Werkzeug für Testautomatisierung, scheint nun Katalon auf dem Weg, diese Rolle zu übernehmen. Siehe auch: Handbuch zu Appium und Selenium vs QTP/UFT. Die alte Client/Server-GUI-Technologie allerdings unterstützt Katalon nicht. | ||
Oracle Application Testing Suite | Oracle | Unterstützt alle Aspekte des Testens web-basierter Applikationen (insbesondere auch Lasttest), ist zudem Umgebung für Requirements und Issue Management. Siehe Overview. | ||
Coverty | Coverity | Dieses Werkzeug findet Fehler durch Source-Code-Analyse (nur für C++, C# und Java). Es scheint hierin sehr effektiv zu sein und ist insofern einzigartig, als es auch Sicherheitslücken entdeckt.
Lies mehr dazu in Coverities White Paper. Zum Auffinden applikationslogischer Fehler ist Test anderer Art notwendig. Dennoch: Wo eine Anwendung auf Robustheit und Sicherheit getestet werden soll, scheint kein anderes Werkzeug auch nur annähernd so hilfreich wie Coverity. | ||
Free | Open Source | Automation Tools for iOS and Android | ||
Kobiton | Appium | Eine cloudbasierte Plattform, welche den Crowd-Testing-Ansatz unterstützt. Er hat z.B. den großen Vorteil, dass man so eine App besonders einfach auf allen gängigen Smartphones getestet bekommt. | ||
| Citrus | Open Source |
The Citrus framework gives a complete test automation tool for integration testing of enterprise applications. You can test your message interfaces to other applications as client and server. Regression testing and continuous integration seem easy using Citrus because it fits into your build lifecycle as usual Java unit test. You can use Citrus with JUnit or TestNG in order to integrate with your application build. With powerful validation capabilities for various message formats like XML, CSV or JSON Citrus is designed to provide fully automated integration tests for end-to-end use cases. Citrus effectively composes complex messaging use cases with response generation, error simulation, database interaction and more. Test cases can be implemented in either XML or Java. During test Citrus simulates all surrounding interface partners (client or server) without any coding effort. With easy definition of expected message content (header and payload) for XML, CSV, SOAP, JSON or plaintext messages Citrus is able to validate the incoming data towards syntax and semantics. | |
| ||||
Free | Open Source | The OWASP Testing Guide, /LV | ||
Free | Open Source | 125 Network Security Tools | ||
Free | Open Source | KALI Linux for advanced Penetration Testing | ||
The OSWE – A Real World Penetration Testing Certification | ||||
Nun aber zu Testwerkzeugen, die sich vor allem auch auf Software anwenden lassen, die nicht auf Basis modernster Architekuransätze entwickelt wurde. Am breitesten aufgestellt ist man hier sicher mit den Test-werkzeugen von HP, insbesondere mit QTP: | ||||
HP QuickTest Professional (QTP) | HP, nun MicroFocus |
und dort zentrale Komponente des Pakets » Business Process Testing « zu sein. Die folgende Charakterisierung von QTP und UTF resultiert aus Erfahrungen bis etwa 2011: QTP 11.0 – man kann es einzeln — als QTP Essentials — oder kombiniert mit HP Service Test kaufen (d.h. als HP Unified Functional Testing Software: HP UFT oder sogar als HP UFT mobile, was auch den Test auf Smartphones genutzter Apps unterstützen möchte und so zu T-Plan konkurriert). In Kombination mit HP Service Test unterstützt QTP alles, was irgendeines der weiter unten genannten Werkzeuge kann. Selbst die SAP GUI ist damit problemlos aufrufbar. In Form des umfassenden Gesamtpakets HP UFT wird selbst noch Integrationstest in SOA-Architekturen gezielt unterstützt (siehe profi.com). Somit sehe ich HP Unified Functional Testing — eindeutig und mit Abstand — als die beste Wahl, insbesondere dann, wenn man Applikationsschnittstellen unterschiedlichster Art anzusprechen hat. Da QTP über VBScript gesteuert wird, lässt sich jeder Testtreiber mit jedem anderen kombinieren, d.h. aus ihm heraus mit aufrufen. Das gilt auch für ohne Hilfe spezieller Testwerkzeuge erstellte API Treiber, die – als EXE – dann sogar in jeder nur denkbaren Programmiersprache geschrieben sein dürfen. Mindestens einen Mitarbeiter, der sich selbst zu einem Experten für die Nutzung der Möglichkeiten dieses Werkzeugs macht, braucht man dazu aber schon. Er muss Programmier-Erfahrung haben (um mit VBScript gut umgehen zu können), siehe z.B. [1] und [2]. Zum Einstieg helfen Erste Schritte mit HP UFT 11.5 und das Buch The UFT API Testing Manifesto. Lies auch: UFT/QTP Tutorials und UTF/QTP vs Selenium Sich von QTPs Object Repository abhängig zu machen, kann zu Schwierigkeiten führen (es enthält beim Recording entstehende GUI-Beschreibung). Man kann allen Scriptcode so gestalten, dass er diese Beschreibungen nicht nutzt. Sie nicht zu nutzen, erscheint zunächst schwieriger, macht die Treiber auf Dauer aber transparenter und daher besser wartbar. Geld für das allumfassende Gesamtpaket HP Unified Functional Testing Software auszugeben, bevor man gelernt hat mit HP QuickTest (QTP) gut umzugehen — und bevor man sicher ist, dass dieses Werkzeug durch zahlreiche Mitarbeiter auf lange Zeit hin genutzt werden wird —, macht in meinen Augen keinen Sinn (ganz sicher nicht für kleinere Unternehmen, einzelne Arbeitsgruppen oder gar nur einzelne Projekte). Zur Durchführung von Lasttest nutze man HP LoadRunner (den de-facto Standard). Ihn kennen zu lernen, betrachte man zunächst die kostenfrei verfügbare HP LoadRunner Community Edition (sie erlaubt 50 parallel arbeitende User zu simulieren). LoadRunners Konkurrenten sind: SilkPerformer (den manche Experten als noch besser empfinden; er ist zudem SAP-zertifiziert) sowie Web Performance (einfacher und kostengünstiger) und WebLOAD, nun aber vor allem Apache JMeter, mehr dazu in [1]. Zum Test der Performanz mobiler Applikationen offeriert HP als dediziertes Werkzeug HP Mobile Load. Ähnlichem Zweck wie HP QuickTest oder HP Service Test dienen folgende Produkte (die ich aber — Rapise und TestComplete mal ausgenommen — sämtlich als dem HP Produkt weit unterlegen sehe): | Zur systematischen Verwaltung riesiger Mengen von Test Cases gab es HP Quality Center (nun von Microfocus angeboten als HP ALM Quality Center). Vorsicht aber: Wo es nur um die Verwaltung einzelner Testprojekte geht, kann man sich mit Recht auf den Standpunkt stellen, dass das schwerfällige HP Quality Center die Tester eher behindert als ihnen hilft. Man braucht es nicht unbedingt. | ||
TestComplete | SmartBear Software | TestComplete erinnert insofern an HP QTP,
als man neue wie alte GUI-Technologien unterstützen möchte (nur SAP GUI
scheint ignoriert zu werden). Mit TestComplete lassen sich .NET Applicationen testen ebenso wie z.B. Delphi-Anwendungen (für die man sonst wohl kein Testwerkzeug mehr findet). Ein ganz andere Frage aber ist, ob sich Testautomatisierung alter Client-Server-Applikationen denn überhaupt noch lohnt ... Da ich QTP genau, TestComplete aber nur von Produktbroschüren her kenne und da das Produkt auch aktuelle Applikationsarchitekturen unterstützt, wundert mich, dass es neben Mercury/HP QTP nie eine Rolle gespielt hat. Woran mag das liegen? Siehe Vergleichsbericht, aber auch drei Notizen über schlechte Erfahrungen bis hin zu Version 8. Wie man per TestComplete über EXCEL-Sheets parametrisierte Testsuiten entwickelt — sog. data-driven Test — ist sehr schön erklärt in SmartBears Webinar. Man erkennt daraus, dass TestComplete ebenso mächtig ist wie HP QTP (im Sinne dessen, was kompetente Testautomatisierer damit erreichen können). TestComplete ist ohne Zweifel eines der nützlichsten Testwerkzeuge überhaupt. Wer sich dafür entscheidet, wird für jede Testautomatisierungsaufgabe gut gerüstet sein. Den Einstieg erleichtern eBooks on Test Complete, ein Cookbook und White Papers wie etwa das zu HTML5 GUI Test. Siehe auch [1], [2], [3] und andere Seiten des umfangreichen, ausführlichen Handbuchs (dessen Seiten sich aber leider nur träge öffnen). Besonders nützlich: Man kann Testrahmen in C# implementieren, die alle durch TestComplete gegebene Funktionalität zu nutzen in der Lage sind (sog. Connected Applications). | ||
Rapise | Inflectra | Existiert seit 2006, scheint vor allem (aber nicht nur) den Test von Webapplikationen sehr gut zu unterstützen. Mit Rapise arbeitet man ganz ähnlich wie mit HP QTP, Programmiersprache ist JScript (statt dort VBScript). Support für SAP GUI scheint zu fehlen. Wohl nach dem Vorbild von HP Quality Center offeriert Inflectra auch eine Umgebung für Requirements, Test, und Issue Management: SpiraPlan, SpiraTest, SpiraTeam. | ||
| ||||
IBM Rational Service Tester for SOA Quality | IBM Rational | 2008 – IBM sagt: Service Tester for SOA Quality is a tool for ensuring the quality of web service based SOA applications.- | ||
IBM Rational Robot | IBM Rational | 2006 (Vers. 7.0) – dient dem Test klassischer Client Server Applikationen Dieses Produkt wurde 2006 durch wenige Hilfsfunktionen rein technischer Art erweitert, scheint sich ansonsten aber schon seit 2003 nicht mehr fortentwickelt zu haben, ist nun Teil von IBM Rational Functional Tester Plus: | ||
IBM Rational Functional Tester | IBM Rational | 2010 (Vers. 8.2) – ist einer der beiden Teile von IBM Rational Functional Tester Plus,
unterstützt auch SAP GUI.
Note: Ende 2012 hört man, SAP-Unterstützung sei nicht mehr gegeben, da keine Partnershaft mit Worksoft mehr bestünde. Bei Bedarf also gezielt danach fragen! | ||
Testing Anywhere | Automation Anywhere | 7.0 – ist weniger nützlich als QTP (aber kaum einfacher) | ||
Worksoft Certify | Worksoft | 2010 – Worksoft Certify is an automated functional testing solution for SAP lifecycle management and cross-platform business process validation. | ||
SilkTest | MicroFocus | War urspünglich ein Produkt von Borland, unterstützt jetzt gezielt auch SAP. Insbesondere SilkPerformer — ein Werkzeug für Lasttest — erscheint vielen Testern als sehr gelungen und hilfreich. | ||
TOSCA Testsuite | TRICENTIS Technology & Consulting | 7.2.2 – hiermit lassen sich nur Testfälle bauen, die sehr wenig bewirken: Umfangreiche Prüfungen vorzunehmen — solche also, die Kontextwissen erfordern — ist unmöglich.
Positiv nur: TOSCA unterstützt auch den Test von Anwendungen, die man als Anwender per SAP-GUI bedient.
Da die Komplexität unterstützter Testfälle extrem begrenzt ist, frage ich mich, wie sich bei Einsatz von TOSCA ein akzeptables Kosten/Nutzen-Verhältnis ergeben kann. | ||
expecco | eXept Software AG | 2012 – Dieses Werkzeug will — wie TOSCA — den Tester davon befreien, den die Testfälle realisierenden Code sehen zu müssen. Mit expecco allerdings lässt sich das
erreichen ohne sich damit in eine Sackgasse zu begeben: Durch expecco verwaltete und aufrufbare Testschritte können in frei wählbarer Programmiersprache implementiert sein.
Dies spricht auch dann noch für das Produkt, wenn man — wie ich etwa —
nicht so recht daran glauben mag, dass man Testtreiber, die nicht-triviale Fehler finden sollen, mit einer an UML erinnernden Methodik einfach zusammenklicken kann. Zum Aufzeichnen von Test für web-basierte Anwendungen ist Selenium RC in expecco integriert. Als in Smalltalk/X implementiertes Werkzeug arbeitet expecco auf MS Windows ebenso wie auf jeder UNIX-basierten Plattform. Informative, für jeden verständliche Testreports lassen sich empfänger-spezifisch konfigurieren. Wer als Format CSV wählt, kann sie sogar noch automatisch lesen und weiter verarbeiten. Welche Art von Anwendungen auf welchen Plattformen expecco unterstützt, wird wohl noch am ehesten klar auf Seite Unterstützte Technologien. Siehe auch die (allzu knappe) Online Docu zu expecco — Installationen des Produkts enthalten weitere, dann eher hilfreiche Dokumentation. Selenium-supported Test Frameworks | ||
Wichtiger Hinweis: |
TOSCA und (auf andere, weniger radikale Art) expecco unterscheiden sich von anderen Testframeworks vor allem dadurch, dass ihre Hersteller glauben,
es könne Sinn machen, Testautomatisierung auch durch Tester durchführen zu lassen, die nicht programmieren können oder wollen.
Meine Ansicht: Das geht meist schief insofern, als dann
| |||
Axe | Odin | 2010 – Test Cases werden in EXCEL Tabellen spezifiziert (aber wie genau?). Scheint, da Scripting nicht unterstützt ist, ähnliche Grenzen zu haben wie TOSCA, kann sich aber — ganz anders als TOSCA — auf andere Testwerkzeuge abstützen. | ||
TestDrive | Original Software | Nach Gartner (Jan 2011) hat TestDrive neben TOSCA von TRICENTIS die niedrigste "ability-to-execute" unter allen 2010 von Gartner betrachteten
"Integrated Software Quality Suites". Interessanterweise besteht die "Vision" beider Werkzeughersteller darin, zu glauben, dem Testautomatisierer wäre am ehesten mit "code-free testing technology" gedient – was mir als ein für ihre Kunden ganz verhängnisvoller Irrtum erscheint, denn tatsächlich gilt: am besten ein einfache, aber dennoch mächtige Skriptsprache. Siehe hierzu auch "Test Automation Reality" von Carl Nagle. | ||
SOAPSonar (Automation Edition) | Chrosscheck Networks | 2010 – unterstützt Automatisierung des Tests web-services-basierter SOA Anwendungen. | ||
Parasoft SOAtest | Parasoft | 9.0 – kenne ich nicht, scheint aber sehr interessant, unterstützt auch Lasttest, Komponententest und — als einziges aller hier genannten Produkte —
automatisches Erstellen von Testtreibern für Security Test (penetration testing). Im Tools Journal liest man: Parasoft SOAtest automates web application testing, message/protocol testing, cloud testing and security testing. Parasoft SOAtest and Parasoft load test (packaged together) ensure secure, reliable, compliant business processes and seamlessly integrate with Parasoft language products (e.g., Parasoft Jtest) to help teams prevent and detect application-layer defects from the start of the SDLC. Some features are client/server emulation, multi-layer verification, test case organization, regression testing, automatic test case generation, and coding standard enforcement. ABER: Was "ability-to-execute" betrifft, hat Gartner in 2011 Parasoft als recht schwach eingestuft (s.u.). Fehlt vielleicht eine Scripting-Schnittstelle? | ||
QF-Test | Quality First Software GmbH | GUI-Test ist gut unterstützt für Anwendungen, deren GUI in Java-Technologie (Swing/Eclipse, SWT, JavaFX) implementiert ist, web-basiert
und zugeschnitten auf MS Internet Explorer, Firefox, Chrome, Edge, Opera oder Safari.
QF-Test passt zudem zu Electron, Webswing und JPro.
Aber auch Android Apps und Windows-Anwendungen können getestet werden. Als Scripting Interface steht eine per Jython, Groovy oder JavaScript aufrufbare Bibliothek hilfreicher Funktionen zur Verfügung. Selbst geschriebene Java Classes sind ebenfalls aufrufbar. Auch eine Batch-Schnittstelle zum Aufruf der Test Cases existiert. Dieses Werkzeug ist auf MS Windows ebenso einsetzbar wie direkt über Unix oder Linux und macOS. Warum er QF-Test besser fand als den einst recht bekannten WinRunner, beschrieb 2006 Mark Michaelis in einem Evaluation Report. Siehe auch weitere Studien, insbesondere eine von Siemens. Bemerkenswert ist, dass QF-Test mit dem GUI-Code der Anwendung so perfekt zusammenarbeitet, dass gelegentliches Fehlverhalten des Testwerkzeugs (wie man es z.B. von HP QTP her kennt) überhaupt nicht vorkommt. | ||
Ranorex | Ranorex GmbH | Ranorex unterstützt Recording und Ergänzen des aufgezeichneten Codes von Hand. Genauer:
Durch Recording entstandener Code kann — in jeweils eigenen Dateien — durch sog. Usercode (geschrieben in C# oder VB.NET) ergänzt werden. Er kann auch durch Abändern aufgezeichneten Codes entstehen. Will man Test um von Hand codierte Aktionen erweitern oder bestehende Aktion verändern, erstellt man neue User Code Actions oder macht aus schon existierenden Aktionen User Code Actions. Damit ist von Hand fortzuschreibender Code stets klar getrennt von Code, den erneutes Recording zu ersetzen hätte. Möglich sind auch Testtreiber, die gar keinen durch Recording entstandenen Code enthalten. Mit Ranorex lassen sich nicht nur .NET-Anwendungen, sondern z.B. auch Anwendungen mit SAP-GUI, Anwendungen von Oracle ERP und sämtliche in Java oder Delphi geschriebenen Anwendungen testen. | ||
WebUI Test Studio | Telerik, Inc. | 2011 – dient dem Test webbasierter Dialogschnittstellen (auch solchen, die mit Silverlight arbeiten). Seine Stärken und Schwächen sind ähnlich denen von Ranorex (man programmiert in C# oder VB; Kern des Produkts ist eine in .NET programmierte Bibliothek WebAii, deren Sourcecode man nicht bekommt. Mit darin enthalten ist eine Funktion zum Erstellen von Bildschirm Snapshots). | ||
Robot Framework | Open Source | Sehr gut dokumentiertes, frei verfügbares Testwerkzeug (entwickelt und supported by Nokia Siemens Networks): Testcases werden in Tabellenform spezifiziert und automatisch interpretiert. | ||
Sahi Pro | Tyto Software | 2011 (Vers. 3.6) – unterstützt nur Web-Applikationen. Testtreiber werden in Sahi Script (Open Source) geschrieben. Eigene Befehle zum Zugriff auf das DOM kann man – als JavaScript function – selbst schreiben und dann aufrufen wie eine durch Sahi definierte Methode. Siehe auch: Data Driven Testautomation with Sahi (Samples) und Sahis Grenzen. | ||
TestPartner | Micro Focus | 6.3 – zu einseitig und weniger nützlich als QTP (aber kaum einfacher) | ||
Visual Studio Test Professional | Microsoft | 2010 – zu speziell, scheint für Acceptance Test nicht geeignet | ||
SAFS | Open source | 2011 – SAFS ist ein Framework, welches gestatten sollte, portable Testtreiber zu schreiben: Mindestens solche,
die man auf Basis von IBM Rational Robot
ebenso wie auf Basis von IBM Rational Functional Tester ausführen kann.
Mittlerweile werden auch TestComplete (von SmartBear Software) und Selenium mit unterstützt. Mindestens wer eines dieser Produkte nutzt, könnte dann also auch an SAFS interessiert sein. Lesenswertes zu seiner Geschichte (und Intention) findet sich hier. |
||
Canoo WebTest | Open source | 2008 – Freeware, unterstützt nur Web-Applikationen (HTTP-basierte GUI). Test Cases werden in XML spezifiziert. Man muss also zunächst eine einfachere Notation finden und Hilfswerkzeug, welches sie nach XML umsetzt. Mit den zur Verfügung gestellten Befehlen kann man Eingaben tätigen, Buttons und Links anklicken sowie in der dann hochkommenden nächsten Seite die Existenz beliebiger Texte und XPath-Ziele verifizieren. Trotz seiner etwa 100 Befehle scheint WebTest weniger mächtig als Sahi Script. | ||
Abbot | Open source | 2008 – Seine Hersteller sagen: Abbot lets you programmatically drive UI components implemented in Java (AWT or Swing), and Costello — built on Abbot — allows you to easily launch, explore and control an application. The framework may be used with both scripts and compiled code. | ||
WATIR | Open source | 2011 – schon recht alte Freeware, mit der man web-basierte Dialogschnittstellen triggern und auslesen kann (als Scriptsprache dient Ruby), hat als Werkzeug keine Zukunft. | ||
HTTP Test Tool | Open source | 2011 – Freeware, unterstützt nur HTTP-Applikationen und kann (als kleine Utility) nur im Ausnahmefall nützlich sein. | ||
AutoIt | Open source | Seit Version 3.2 enthält die Skriptsprache AutoIt —
als sog. User-defined Function (UDF) — die Bibliothek IE.au3, mit der sich der Zugriff auf Webseiten per MS Internet Explorer sehr gut automatisieren lässt. Wer sich ernsthaft mit AutoIt befassen möchte, findet über DMOZ ein noch unfertiges, aber dennoch hilfreiches Buch dazu. Darüber hinaus enthält AutoIt.chm (Teil der AutoIt3 Installation und gemeinsamer Index zu AutoIt3.chm und UDFs3.chm) gute Dokumentation jeder einzelnen Funktion. Leider ist AutoIt eine Insellösung, da die Funktionalität der UDFs nicht über VBScript aufrufbar zu sein scheint (warum der Autor eine eigene, dem VBScript recht ähnliche Sprache erfand, ist nicht wirklich verstehbar — immerhin aber stellt er die Funktionalität von AutoIt3 selbst auch per DLL zur Verfügung: siehe AutoItX). | ||
Perl | Open source | Wer Test mit Hilfe der Skriptsprache Perl automatisieren möchte (was ich nicht empfehlen würde), kann über die
Bibliothek Win32::IEAutomation auf Webapplikationen zugreifen. Wie Roland Schmitz mir schrieb, werden alternativ dazu auch WWW::Mechanize oder WWW::Mechanize::Firefox gerne genutzt. | ||
Weitere ... | Open source |
Für eilige Leser: Kurzer Vergleich zwischen Ranorex, QTP (= UTF) und Selenium. Hier eine Liste weiterer Test Utilities: Die meisten werden nur in seltenen Ausnahmefällen nützlich sein (ergänzend zu einer allgemeineren Plattform), andere aber — mindestens SoapUI und TestLink — unterstützen mögliche Schwerpunkte der Testaufgabe und sind daher (als Spezialisten) fast unentbehrlich. Gemeines Merkmal aller ist, dass sie sich nicht ausschließlich auf Black Box Test konzentrieren:
|