2011-01-11 8 views
0

Hat jemand eine Idee warum Selen RC Server dauert eine lange Zeit, um Tests zu führen? Ein einfacher Test, einfach eine Webseite zu öffnen (php) und den Titel zu behaupten, dauert 4 Minuten. Die Tests werden auf dem Ubuntu-Server und unter Verwendung des headless (XFrame Buffer) Selenium RC-Servers ausgeführt. Macht die Tatsache, dass XFrame Buffer verwendet wird, einen Unterschied?Selen RC zu langsam auch für einfache Tests

+0

Ich versuchte mit einem einfachen Test das Problem zu debuggen. Der aktuelle Test, den ich benutze, öffnet einfach eine Webseite und bestätigt den Titel, aber selbst diese Tests laufen ungefähr 4 Minuten lang ... die Startmethode in Selenium.php scheint eine Minute zu dauern und manchmal wird getTitle() -Methode verwendet eine lange Zeit. Die Tests enden jedoch nach langer Zeit. Irgendwelche Ideen? –

Antwort

0

Ich hatte ein ähnliches Problem. Downgrade Testing_Selenium auf 0.4.3 von 0.4.4 geholfen.

+0

Vielen Dank für Ihren Vorschlag. Es hat das Problem gelöst. Der Test dauert jetzt weniger als eine Minute. –

0

Ist die Webseite lokal oder remote? Die einfachste Antwort könnte sein, dass Sie sich mit einem langsamen Host verbinden oder die Verbindung zwischen Client und Server langsam ist.

Können Sie weitere Details zur Serverkonfiguration angeben, auf der RC ausgeführt wird? Soweit ich gelesen habe, sollte Xfvb schneller sein.

+0

Vielen Dank Reed für Ihre Antwort. –

+0

Danke Adam für deine Antwort. Die Webseite ist sehr lokal (wir verbinden uns mit localhost/ourpage) –

+0

und ich bin auf Linux laufen –

0

Da ist etwas an Ihrer Umgebung, das das verursacht. Wir führen mehrmals am Tag eine Reihe von etwa 700 Tests durch, und die meisten (manchmal sehr komplexen) Tests werden in weniger als 30 Sekunden abgeschlossen. Unsere Umgebung ist Windows, das in einer virtuellen EC2-Maschine läuft, auf der sich alles auf demselben Computer befindet - Datenbank, Browser, Anwendungsserver, Testskripts und Selenium. Wir vermeiden so einige Netzwerkverzögerungen, aber die Kehrseite ist, dass wir einen hohen CPU- und Speicherdruck haben.

+0

Ich bin mir nicht besonders sicher, was könnte falsch mit der Umgebung, die dies verursacht.Der Server ist in der Lage, schwere CPU oder aufzunehmen Speicherdruck, wie sie Anwendungen sind, die darauf laufen. –

+0

Ich habe die Systemauslastung überprüft, wenn die Tests laufen oder anderweitig (mit Vmstat) und die meiste Zeit sehe ich das System nicht überladen oder irgendetwas anderes. Die zugrunde liegende Webseite wird in PHP getestet. ist Selen bekanntermaßen langsamer für PHP-Code? –

1

Eine weitere Alternative zu diesem Problem ist die Verwendung von "Selenium", das im PHPUnit-Paket enthalten ist. Ich habe meinen Code derzeit von der Verwendung des Testing_Selenium-Pakets zur Verwendung der Selen-Schnittstelle in PHPUnit verschoben.