2009-11-06 14 views
8

Ich habe eine etwas komplexe Web-Anwendung, die Flash und Javascript auf der Client-Seite und PHP-Funktionalität Server-Seite enthält. Die PHP-Funktionalität enthält Systemaufrufe (exec()) zum Zusammenführen/Bearbeiten/Erstellen von Dateien mit Gnu-Software (* nix-Umgebung) sowie API-Aufrufe an REST-Dienste zum Hochladen dieser Dateien (dies wird jedoch mit Cron-Aufträgen geschehen).Wie soll ich meine Webanwendung testen?

Wir sind noch nicht bereit für die Inbetriebnahme, wir erwarten eine große Serverlast direkt beim Start, daher müssen wir die Umgebung testen. Ich habe in einigen Bibliotheken wie JMeter nachgeschaut, aber afaik können diese Bibliotheken nicht mit dem Flash umgehen - und das Zusammenführen/Bearbeiten/Erstellen hängt von der Eingabe aus der Flash App ab. Wie kann ich meine Umgebung bestmöglich testen?

Mit freundlichen Grüßen,

Antwort

3

Selenium könnte ein guter Weg zu gehen sein; es handhabt AJAX/JavaScript sehr gut, und Adobe hat eine Selenium extension speziell für Flash-Tests. Selen hat ein bisschen Lernkurve, aber es ist die Zeit wert.

+0

Ist Selen für Stresstests? – svirk

+1

Selen ist nicht speziell für Belastungstests gedacht, aber da Sie es über die Befehlszeile ausführen können, wäre es ziemlich einfach, mehrere gleichzeitige Testläufe einzurichten. –

4

Wenn Sie Apache laufen haben, könnten Sie ab verwenden, um die Server-Seite Ihrer Anwendung zu betonen zu testen.

Apache HTTP server benchmarking tool

Sie wissen nicht, ob es aber Flash und/oder Javascript verarbeiten kann.

ab ist ein Tool zum Benchmarking Ihres Apache Hypertext Transfer Protocol (HTTP) -Servers. Es soll Ihnen einen Eindruck vermitteln, wie Ihre aktuelle Apache-Installation funktioniert. Dies zeigt Ihnen insbesondere, wie viele Anfragen pro Sekunde Ihre Apache-Installation ausführen kann.

2

Für die Back-End-PHP, würde ich nur Timer für jede Methode verwenden und versuchen, einige Millisekunden hier und da zu kratzen. Ich würde mir keine Sorgen über PHP machen.

Für den Front-End-Stresstest würde ich es mit etwas wie iMacros hämmern.

More info here

Web Testing

Web-Profis iMacros für funktionale Leistung verwenden können, und Regressionstests von Web-Anwendungen . Der eingebaute Befehl STOPWATCH erfasst präzise Antwortzeiten der Webseite . iMacros enthält auch Unterstützung für viele AJAX-Elemente.

Hoffe das hilft.

+0

imacro ist nicht mehr kompatibel mit 'Firefox Quantum' –

4

Wie eine andere Person empfohlen, könnte Selen hier gut sein. Das einzige Problem ist, dass wenn Sie versuchen, Stresstests durchzuführen, ein einzelner Selenium-Browser nicht genügend Nebenläufigkeit für Sie bereitstellt.

Meine Firma, BrowserMob, bietet Selen-basierte load testing services, in denen Sie mehr als 100 gleichzeitige Selenium-Skripte auf Ihrer Website generieren können. Wir haben auch Unterstützung für Flash mit nativen Klicks, was bedeutet, dass Sie nicht einmal den Trick machen, mit dem Gareth verlinkt ist (obwohl das empfohlen wird, wenn Sie können).

Das alles gesagt, nur weil Ihre Website Flash verwendet, bedeutet es nicht unbedingt erfordert einen echten Browser, um die Leistung zu testen. Wenn die Flash-Komponente RAW-HTTP spricht, wird ein Tool wie JMeter oder der Dienst "Virtueller Benutzer" meines Unternehmens (dh: Selenium nicht verwenden) wahrscheinlich funktionieren. Wenn es AMF über HTTP spricht, können Sie es immer noch tun, aber es ist normalerweise ein bisschen schwieriger. Aber wenn Sie wirklich Dinge wie Video-Streaming testen möchten, müssen Sie vielleicht ein bisschen fortgeschrittener gehen.

Verwandte Themen