Jak mogę uruchomić testy Selenium na serwerze Ubuntu?

10

Obecnie mam maszynę testową z systemem Ubuntu server 9.10 bez GUI. Chcę uruchomić moje pakiety testowe Selenium RC, które otwierają Firefoksa i wykonują szereg operacji. Mogę nadmuchać mój serwer testowy za pomocą Gnome lub KDE, aby uruchomić te testy, ale szukam lżejszego rozwiązania. Czy ktoś ma jakieś sugestie dotyczące uruchamiania testów GUI na serwerze Ubuntu?

Thierry Lam
źródło
Jeśli aplikacja internetowa nie jest obciążona javascript, być może powinieneś rozważyć użycie Webrat zamiast Selenium. Zyskasz możliwość testowania na bezgłowych maszynach, a skrypt jest ładniejszy i znacznie szybsze uruchamianie testów.
WheresAlice

Odpowiedzi:

6

Wypróbuj to, aby zautomatyzować serwer bezgłowy. (Zastrzeżenie, napisałem post poniżej)

http://www.semicomplete.com/blog/geekery/headless-wrapper-for-ephemeral-xservers.html

Podsumowując, stworzyłem skrypt do uruchamiania dowolnej komendy na nowo utworzonym bezgłowym serwerze X. Pozwala to również na uruchomienie wielu bezgłowych serwerów X jednocześnie, jeśli zajdzie taka potrzeba.

Tak więc, aby uruchomić selenium-rc na nowym bezgłowym serwerze X, zrobiłbyś to (używając narzędzia opisanego w powyższym poście)

sh ephemeral-x.sh -x "Xvfb -ac -screen 0 1024x768x24" java -jar selenium-server.jar ...
Jordan Sissel
źródło
5

nie testowałem tego sam, ale brzmi to obiecująco:
http://www.alittlemadness.com/2008/03/05/running-selenium-headless/

Spróbuję tego dla siebie.

EDYCJA: w
końcu miałem czas na sprawdzenie się. przetestowałem to na suse, ale powinno być takie samo dla Ubuntu, z wyjątkiem być może nazw pakietów i ścieżek.

najpierw zainstaluj pakiet xvfb, nazywa się on suse xorg-x11-Xvfb

uruchom xvfb w tle z parametrami wyświetlacza, ekranu i rozdzielczości:
/usr/X11R6/bin/Xvfb :15 -ac -screen 0 1024x768x8 &

zmień ustawienia wyświetlania:
export DISPLAY=localhost:15.0

i uruchom swój selen rc:
/opt/java/bin/java -jar selenium-server.jar > /var/log/se_rc_server.log 2>&1 &

możesz również uruchomić selen rc z określonym testsuite:
/opt/java/bin/java -jar selenium-server.jar -htmlSuite "*firefox3" "http://www.google.com" "/root/google.ts.html" "/root/google_report.html"

chrześcijanin
źródło