Test automation tool/Bibliotheken/Frameworks für C++ - GUI windows-desktop-apps
leider habe ich ein GUI-desktop-Anwendung läuft auf Windows und kompiliert mit " Borland C++ compiler. Ich weiß, es ist eine sehr alte Technik, aber das ist das Leben. Die Firma für die ich arbeite, haben viele freie Lizenzen für QTP. Aber um ehrlich zu sein, ich weiß nicht, wie dieses tool und ich will es ändern mit einigen open-source-alternative.
Habe ich eine Erfahrung mit der Automatisierung von Web services mithilfe von Selen und einige java-swing-applets.
Ich habe meine tests basierend auf Java/JUnit. Ich Frage mich, ob ich einige tests in Java zu testen, meine C++ - Anwendung - das wäre toll. Wenn das nicht möglich ist, wenn ich eine C/C++ - Bibliotheken zum erstellen meiner eigenen test-framework.
Dass sollte keine unit-tests. Ich will eher eine suite von funktionalen tests.
Ich möchte in der Lage zu lokalisieren, Objekte wie buttons, Tabellen, Zellen, etc., Aktion wie das klicken auf, den Fokus ändern, etc.
Darüber hinaus habe ich Zugang zu der Quelle. Das ist aber eher eine alte spaghetti-code und ich habe nicht viel Erfahrung mit C++ - Anwendungen.
Was schlagen Sie vor?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Open-Source-Tools
Weiß ist .NET-basierten UI-automation-Tools automatisieren können win32-Anwendungen unter anderen Arten. Solange die Steuerelemente in Ihrer app setzen Ihre Inhalte/Verhalten mithilfe von Windows' standard-UIAutomation Haken, dann sollten Sie in der Lage, es zu tun, was Sie brauchen.
UIAutomation Überprüfen ist ein weiterer CodePlex-Projekt, die mit den gleichen APIs zu automatisieren UIA-konform UIs.
Visual Studio
Schließlich, wenn Sie Zugriff haben, um es dann Visual Studio 2010 hat scripted UI-test-Funktionen in Premium - /Ultimate-Edition - Tests der codierten UI. Diese unterstützt .NET, native-und web-Anwendungen mit Aufnahme/Wiedergabe-und scripting-Funktionalität.
Verwenden wir Sikuli und waren sehr glücklich mit ihm. Es funktioniert außerhalb der verschiedenen Automatisierungs-APIs, so dass es behandelt nicht-standard-UIs sehr gut.
Stimme ich mit Robert, dass QTP ist manchmal nicht das beste Werkzeug, vor allem, wenn Sie es wollen, warten Sie, bis der desktop-Anwendung, um seine Verarbeitung zu beenden. QTP-Befehle sind nicht synchron, was bedeutet, dass QTP nicht warten, bis der Vorherige Befehl beendet die Ausführung, bevor Sie zum nächsten Anruf. Wir hatten eine Menge Probleme mit diesem. Wir planen jetzt zum schreiben einer c# - dll, die können dies tun, für QTP und beinhalten, dass in unserer QTP-Programme zu machen, QTP dynamisch warten Sie, bis der Desktop-Anwendung beendet die Verarbeitung. Derzeit ist meines Wissens keine solche warte-Funktionalität wird unterstützt von QTP.
Auch, wieder auf die Objekterkennung Problem, Wir hatten eine Menge Problem mit dieser und nahm die alternative route zum aufrufen von Befehlen über Eselsbrücken durch Tastatureingaben im QTP. Wie Simon bereits erwähnt hat, könnte dies aufgrund der nicht-Exposition der GUI-Elemente. Wir haben nicht viel Kontrolle in dieser Hinsicht und so sind wir nicht weiter zu untersuchen, auf dieser.
Robert, wenn Ihr Unternehmen hat bereits Lizenzen von QTP, ich schlage vor, Sie verwenden. Es ist das richtige Werkzeug für den job, und es macht keinen Sinn, das Rad neu erfinden, wenn Ihr Unternehmen bereits besitzt. Es hat seinen Warzen - meine wichtigsten Einwände sind auf die begrenzt, IDE-und VBScript scripting Sprache - aber es nicht geworden, der Markt-führenden Werkzeug durch einen Unfall. Es gibt nicht viele open-source-Optionen für den Test ein Windows-C++ - GUI-app. Die wichtigsten kommerziellen Optionen, die Sie betrachten sollten, sind HP QTP, IBM Rational Functional Tester und VS2010 Tests der Codierten UI.