2 Stimmen

Wie testet man AJAX-Anfragen mit Merb und Webrat?

Ich verwende merb mit rspec und webrat. Wie kann ich sicherstellen, dass die rjs-Vorlage erfolgreich gerendert wurde? Ich kann nicht einfach have_xpath wegen ajax schreiben.

2voto

John F. Miller Punkte 26368

Das ist nicht einfach. Sie erwähnen bereits Selenium, die vom Browser den ganzen Weg nach unten testen wird, aber es ist langsam. Mein Vorschlag ist, dies in zwei Teile zu zerlegen. Verwenden Sie zunächst rspec, um die Ausgabe der ursprünglichen Seitenanforderung zu überprüfen, um sicherzustellen, dass sie das JavaScript enthält, von dem Sie glauben, dass es vorhanden ist, und auch die Ajax-Antwort, um sicherzustellen, dass sie korrekt bedient wird.

Der Trick besteht nun darin, das JavaScript selbst zu testen. Es gibt eine Reihe von Testbibliotheken für JavaScript. Ich empfehle jUnit. Schreiben Sie Tests wie für rspec und testen Sie die Funktion Ihrer Ajax-Anfrage und die resultierende rjs separat.

Schließlich verwenden Sie Selenium, um den gesamten Stack auszuführen und zu beweisen, dass alles zusammen funktioniert. Wenn es Bugs gibt, gehen Sie zurück zu einem Ihrer Unit-Tests und schreiben Sie einen einfacheren Test, der den Bug aufdeckt.

0voto

Sam Punkte 428

Nun, ich habe es. Es gibt Selen, Watir und Freunde. Klingt komisch, weil ich einen Browser zum Testen brauche :(

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X