2010-11-18 8 views
4

Ich bin in einem neuen Projekt, das ein End-to-End-Test-Framework einbeziehen möchte. Wir wollen etwas flexibles, ich habe Fitnesse schon früher benutzt und ich denke, wir brauchen etwas ähnliches.End-to-End-Test-Framework-Empfehlungen

Wir verwenden auch Hudson CI und suchen nach etwas, das sich leicht damit integrieren würde.

Gibt es einen klaren Gewinner?

AKTUALISIERT: Das System hat viele Komponenten, einige von ihnen sind Webdienste, die auf Tomcat laufen, es gibt auch einige NoSQL-Datenbanken, aber im Moment ist kein UI-Test erforderlich.

Bitte fügen Sie einen Kommentar hinzu, wenn weitere Erläuterungen zu den Projektdetails erforderlich sind.

+0

Um Ihr System zusammenzufassen: Sie haben Webservices als einzige Schnittstelle zur Außenwelt jetzt sofort. Ist das richtig? –

+0

Ja, es gibt auch eine ältere Webschnittstelle, aber wir werden sie ersetzen und nicht planen, sie mit diesem Framework zu testen. –

+0

Warum nicht FitNesse? Sie sagen, Sie haben es schon einmal benutzt und Sie wollen etwas ähnliches. –

Antwort

6

Das Roboterrahmenwerk ist ein gutes, schlüsselwortgesteuertes Testframework, das wir für End-to-End-Integrationstests verwenden. http://code.google.com/p/robotframework/

Es gibt eine plugin for jenkins (eine Gabel von Hudson), die sehr nützlich ist. Es funktioniert auch mit Hudson reportedly.

+2

endlich mit diesem weg. Werde sehen wie es geht aber scheint soweit noch in Ordnung. –

1

Können Sie genauer sein, wenn Sie sagen, dass Sie ein End-to-End-Testframework haben möchten? Welche Art von Anwendung entwickeln Sie (eigenständig, webbasiert, Webservice, ...)? In welcher Sprache programmieren Sie?

Ich würde auch nach Vorkenntnissen in Ihrem Team oder um Ihr Team (z. B. andere Teams) suchen. Es könnte ausreichen, TestNG oder JUnit zu verwenden (Ich habe ein altes Whitepaper zum UI-Test mit JUnit gesehen). Fast alle Test-Frameworks sollten für Hudson in Ordnung sein, solange sie in einem Headless-/Scripted-Modus gestartet werden können und die Ergebnisse in einem Format bereitstellen, das Hudson versteht (im schlimmsten Fall reicht HTML aus, obwohl Hudson es nur kann) um die Seiten anzuzeigen). Wenn Sie also IBM Monitoring-Tools zur Verfügung haben, sollten Sie sich Rational Functional Tester oder Rational Performance Tester ansehen.

FitNesse ist ein gutes Werkzeug für Funktionstests. Die Geschäftskontakte können die Testfälle selbst erstellen (Entwickler müssen einen Connector-Code bereitstellen), was mehr Sichtbarkeit schafft und den Testingenieuren Arbeit abnimmt. Nachteil ist, dass Sie nicht wirklich UI-Tests durchführen können. Wenn Sie eine Open-Source-Plattform für die Benutzeroberfläche benötigen, werfen Sie einen Blick auf die Naht. Obwohl ich die OSS-Philosophie mag, benötigen Sie möglicherweise eine längere Anlaufzeit (höhere Kosten) und möglicherweise mehr Wartungszeit für OSS (nicht für alle OSS). Überprüfen Sie auf jeden Fall, wie einfach es ist, Unterstützung für Ihr Framework zu erhalten. Sie könnten sogar bezahlte Unterstützung für Ihr Framework in Betracht ziehen (unabhängig davon, ob es sich um eine offene oder geschlossene Quelle handelt). Vergessen Sie auch nicht, dass Sie, selbst wenn Sie die OSS-Quelle selbst reparieren können, nicht über das nötige Fachwissen oder die Zeit verfügen, Fehler zu beheben oder Funktionen hinzuzufügen.

Also geben Sie uns mehr Informationen und wir können Ihnen bessere Ratschläge geben.

+0

aktualisiert, um das System besser zu beschreiben. –

2

Gut zu lesen Sie haben sich entschieden, Robot Framework zu verwenden. Sein Hudson-Plugin hat sich in letzter Zeit schon viel besser entwickelt (Trenddiagramme, direkt von Hudson erhältlich, ...) und an einen neuen Ort verschoben: http://wiki.hudson-ci.org/display/HUDSON/Robot+Framework+Plugin

+0

Das sind großartige Neuigkeiten. Wir beginnen immer noch, unsere Basis-Integrationsfunktionen zu erstellen und unsere ersten Testfälle zu schreiben, aber ich werde sie definitiv irgendwann mit unseren Hudson-Builds integrieren. Ich spare den Link für dann. –