Comment puis-je exécuter des tests Selenium sur un serveur Ubuntu?


10

J'ai actuellement une machine de test exécutant le serveur Ubuntu 9.10 sans interface graphique. Je veux exécuter mes suites de tests Selenium RC qui ouvrent Firefox et effectuent une série d'opérations. Je pourrais gonfler mon serveur de test avec Gnome ou KDE pour exécuter ces tests, mais je cherche une solution plus légère. Quelqu'un a-t-il des suggestions sur la façon d'exécuter des tests GUI sur un serveur Ubuntu?


Si l'application Web n'est pas lourde en Javascript, vous devriez peut-être envisager d'utiliser Webrat plutôt que Selenium. Vous auriez avantage à pouvoir tester sur des machines sans tête et il est plus agréable de scripter et il est beaucoup plus rapide d'exécuter des tests.
WheresAlice

Réponses:


6

Essayez ceci pour automatiser des choses de serveur sans tête. (Attention, j'ai écrit le post ci-dessous)

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

Le résumé de base est que j'ai fait un script pour exécuter n'importe quelle commande dans un serveur X sans tête nouvellement créé. Cela vous permet également d'exécuter de nombreux serveurs X sans tête à la fois si vous en avez besoin.

Donc, pour démarrer selenium-rc dans un nouveau serveur X sans tête, vous feriez (en utilisant l'outil décrit dans le post ci-dessus)

sh ephemeral-x.sh -x "Xvfb -ac -screen 0 1024x768x24" java -jar selenium-server.jar ...

5

Je ne l'ai pas testé moi-même, mais cela semble prometteur:
http://www.alittlemadness.com/2008/03/05/running-selenium-headless/

je vais essayer cela par moi-même.

EDIT:
enfin j'ai eu le temps de tester par moi-même. je l'ai testé sur suse, mais devrait être le même pour ubuntu, sauf peut-être les noms de paquet et de chemin.

installez d'abord le paquet xvfb, sur suse on l'appelle xorg-x11-Xvfb

démarrer xvfb en arrière-plan avec les paramètres d'affichage, d'écran et de résolution:
/usr/X11R6/bin/Xvfb :15 -ac -screen 0 1024x768x8 &

modifier vos paramètres d'affichage:
export DISPLAY=localhost:15.0

et démarrez votre sélénium rc:
/opt/java/bin/java -jar selenium-server.jar > /var/log/se_rc_server.log 2>&1 &

vous pouvez également démarrer selenium rc avec une suite de tests spécifiée:
/opt/java/bin/java -jar selenium-server.jar -htmlSuite "*firefox3" "http://www.google.com" "/root/google.ts.html" "/root/google_report.html"

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.