Frage

Ich möchte Integrationstests und Systemtests für meine Anwendungen, sondern produzieren gute Integrations- und Systemtests haben oft benötigt so viel Mühe machen, dass ich nicht die Mühe gemacht haben. Die wenigen Male, die ich versuchte, schrieb ich individuelle, anwendungsspezifische Testbäume, die wie Filz neu zu erfinden das Rad jedes Mal. Ich frage mich, ob dies der falsche Ansatz ist. Gibt es ein „Standard“ Konzept für die Integration und vollständige Systemprüfung?

EDIT: Um zu klären, ist es automatisierte Tests, für Desktop- und Web-Anwendungen. Im Idealfall eine komplette Testsuite, die die volle Funktionalität der Anwendung ausübt.

War es hilfreich?

Lösung

Wenn von „make Integrationstests und Systemtests“ Sie automatisierte Tests bedeuten, dann ist die Antwort nein ist, gibt es keinen einheitlichen Ansatz. Was Ansatz wählt, hängt davon ab:

  • die Eigenschaften der Anwendung (zum Beispiel hat es eine GUI ?, ist es nur lesen ?, wie viele externe Abhängigkeiten hat es, etc.)
  • , was Sie zu Test versuchen (vielleicht haben Sie nur GUI-Tests benötigen, oder vielleicht das Gegenteil wahr ist und Sie nicht wirklich kümmern uns um die GUI aber die interne Logik ist kritisch)
  • , wie schnell Sie die Ergebnisse sehen wollen (zum Beispiel je mehr Sie Stub desto schneller Tests werden)
  • die Skillset in Ihrem Team

Ich persönlich liebe jeden Ansatz, integriert mit JUnit. JUnit ist ein fantastischer Rahmen, gut unterstützt wird und leicht einen kontinuierlichen Intergration Server gebunden in. Hier sind ein paar möglichen Ansätze:

  • Selen mit JUnit - fantastisches Werkzeug für den Antrieb Web-Anwendungen
  • Concordion - für alle Anwendungstypen. Integration mit JUnit und ermöglicht einfache Englisch Spezifikationen von Tests. Ihre ‚Leuchte‘ / Test-Code wird in der Beschreibung und assert oder Aktionen auf diesem in Stichworte einhaken.
  • FEST - für Swing-Anwendungen, wieder integriert es mit JUnit (siehe ein Thema noch ?;) (mehr Auswahl hier )

Die obigen Beispiele stellen eine enorme Menge an aus der Box Hilfe zum Testen. Natürlich benötigen sie noch Mühe Draht zu Ihrer Anwendung und pflegen, aber die Vorteile sind es wert. Zusätzlich zu den oben genannten, müssen Sie darüber nachdenken, wie zu Stub sein oder Bereiche Ihrer Anwendung verspotten. Vielleicht möchten Sie alle Ihre Tests „unter der GUI“ oder „über die Datenbank“ tun. welches interact mit Ihrer Datenbank Im ersten Szenario, werden Sie Ihre Tests müssen an den Stellen im Code starten, wo die GUI mit ihr zu interagieren würde und im letzteren werden Sie die Dienste Stub müssen.

Punkt zu sein, es gibt viele Möglichkeiten, dies zu tun. Beste beginnt mit einem sehr klaren Verständnis von dem, was Sie wollen Ihre Tests raus. Dann lernen, was bestehende Frameworks ist da draußen zu helfen Sie auf, was Sie testen wollen, und schließlich, versuchen Sie nicht, die Welt in einer Nacht zu erobern. Fangen Sie klein an immer ein paar Tests laufen. Holen Sie sich den grünen Balken (immer eine Freude zu sehen!) Holen Sie sich eine stabile bewährte Plattform für die Prüfung und stellen Sie sicher, dass Sie zufrieden damit. Dann fügen Sie mehr als Sie gehen zusammen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top