Integrationstest für eine Webanwendung

8

Ich möchte den vollständigen Integrationstest für eine Webanwendung durchführen. Ich möchte viele Dinge wie AJAX, Positionierung und Vorhandensein bestimmter Phrasen und HTML-Elemente mit mehreren Browsern testen. Ich suche ein Werkzeug für solche automatisierten Tests.

Auf der anderen Seite; Dies ist das erste Mal, dass ich Integrationstests verwende. Gibt es spezielle Empfehlungen für solche Tests? Irgendein Tutorial auch?

(Als Anmerkung: Mein Backend-Code wird mit Perl, Python und Django erstellt.)

Danke!

    
khelll 17.11.2009, 09:59
quelle

9 Antworten

11

Wenn Sie umfassende Tests einschließlich Browserfunktionen wie AJAX durchführen müssen, dann würde ich Selenium empfehlen. Selenium startet einen Browser und steuert ihn, um die Tests auszuführen.

Es unterstützt alle wichtigen Plattformen und Browser . Selen selbst ist in Java implementiert, aber das ist nicht wirklich ein Problem, wenn es verwendet wird, um eine Webanwendung über seine Benutzerschnittstelle zu testen.

Selentests sind eine Folge von Befehlen in einer HTML-Tabelle, die unterstützten Befehle sind gut dokumentiert . Es gibt auch eine IDE , die als Firefox-Plugin implementiert wurde und mit der Tests aufgezeichnet und ausgeführt werden können. Die Testskripte, die in der IDE erstellt werden, können jedoch dazu verwendet werden, Tests gegen einen der unterstützten Browser durchzuführen.

    
Tendayi Mawushe 17.11.2009, 10:05
quelle
11

Selenium ist ein guter Weg zu gehen. Für die Verwendung mit Perl verwenden Sie dann das Test::WWW::Selenium CPAN-Modul.

Hier ist ein Beispiel aus seinem Pod:

%Vor%

Und hier sind einige zusätzliche Links, die vielleicht hilfreich sind:

/ I3az /

    
draegtun 17.11.2009 12:22
quelle
6

In diesem Artikel macht Noah Gift gute Arbeit und präsentiert drei Hauptalternativen für Web-App-Integrationstests: Windmühle, Selen und Twill. Twill betreibt kein Javascript, so dass Selenium und Windmill als Hauptmöglichkeiten übrig bleiben. Geschenke zeigen genug, was die Verwendung jeder von ihnen bedeutet, so dass Sie wählen können.

Eine Sache, die Gift nicht erwähnt, ist, dass Selen viel populärer ist - das ist nicht offensichtlich, wenn man nur die Begriffe Windmühle und Selen im Internet sucht, aber das ist, weil jeder (unterschiedliche Anzahl von ;-) falschen Hits bekommt. [windmill javascript] gibt 325k Treffer, [selen javascript] gibt 1,2 Millionen Treffer, und dieses Verhältnis ist repräsentativer. Wie auch immer, der Punkt ist, dass, wenn Sie beide für Ihre Bedürfnisse gleichermaßen leicht und leistungsfähig genug finden, so dass es Ihnen schwer fällt, eine auszuwählen, dann Selen auszuwählen (dh mit der Menge zu gehen), kann Vorteile haben (mehr Experten herum, zB auf SO um Fragen zu beantworten ;-) Wählt die etwas weniger beliebte Alternative.

    
Alex Martelli 17.11.2009 15:42
quelle
4

Sie können Selen auch mit Selenium-RCs Pythonbindung steuern. Zum Beispiel:

%Vor%     
John Keyes 17.11.2009 11:05
quelle
2

Selenium ist ein sehr gutes Tool, um Browser-Tests zu automatisieren

Da du Ruby in deinen Tags erwähnt hast, empfehle ich auch Webrat , was eine nette Testlösung für den Browser in Ruby ist .

    
Aurélien Bottazini 17.11.2009 10:22
quelle
2

Hier ist eine weitere Option, die allesamt in Python geschrieben ist und verschiedene Browser zum Ausführen von AND-Aufnahmetests verwendet: Windmühle

    
Etienne 17.11.2009 14:54
quelle
1

Ich würde Selenium auch empfehlen. Es hat ein wirklich nettes Firefox-Plugin, mit dem Sie Ihre Integrationstests erstellen können.

    
brainfck 17.11.2009 10:09
quelle
1

TestPlan ist ein großartiges Werkzeug für allgemeine Webtests. Es bietet sowohl ein displayloses Backend als auch Selenium. Das Selenium-Backend sollte sich darum kümmern, dass es in allen gängigen Browsern getestet wird. Es hat auch eine eigene Skriptsprache, die es ermöglicht, schnell zu schreiben und zu testen, obwohl Java auch verwendet werden kann.

Zum Beispiel geht das auf eine Seite und übergibt ein Suchformular und überprüft, ob es das richtige Ergebnis gefunden hat.

%Vor%     
edA-qa mort-ora-y 11.12.2009 14:56
quelle
0

Ein weiteres großartiges Tool zum Testen von Browsern, das als Ruby-Bibliothek erstellt wurde und Ruby für Skripts verwendet, ist Watir . Es gibt auch ein Firefox-Plugin für watir wie Selen namens
Firewatir gehostet auf Google-Code

    
user212989 17.11.2009 15:58
quelle