2009-12-27 15 views
8

Je suis en train d'exécuter Selenium sans tête (sans l'apparition du navigateur). D'autres questions ont pointé à xvfb comme outil pour le faire. Cependant, il semble très instable, s'écraser tout le temps, donc je cherche une autre alternative.Exécution de Selenium sans tête sans utiliser xvfb

Y a-t-il un moyen non-xvfb de faire fonctionner Selenium sans tête?

Répondre

13

Je ne pense pas que vous serez en mesure d'exécuter un navigateur sans exécuter un serveur X.

Si vous n'aimez pas Xvfb, alors comme Pascal l'a dit, votre meilleur pari pourrait être de faire tourner un serveur VNC - Personnellement, j'aime Xtightvnc. Cela signifie que vous utilisez un serveur X (sans tête) sur lequel vous pouvez utiliser VNC à tout moment, au cas où les choses tournent mal et que vous voulez le regarder. J'ai toujours un serveur VNC en cours d'exécution et j'exécute mes tests avec la variable d'environnement $ DISPLAY pointant vers ce serveur. Quelqu'un m'a rabaissé, alors peut-être devrais-je clarifier: Les serveurs X11 VNC comme Xtightvnc ne sont pas les mêmes que les serveurs VNC habituels sur Windows ou OS X, qui partageraient simplement votre écran existant sur le réseau. ;-))

+0

excellente réponse - d'autant plus que RHEL ne semble plus avoir Xvfb dans les dépôts yum. tigervnc _is_ là, cependant. Donc, je dirais que c'est une solution beaucoup plus officiellement supportée, mais googling semble vous conduire d'abord à xvfb ... – jm0

+0

Cool, mais certains utilisateurs peuvent être à une perte quant à la façon de l'utiliser. Pourriez-vous ajouter quelques exemples? quelque chose comme: exécuter '$ vncserver', vérifier l'index de sortie' New 'X' desktop est l'hôte: 1' et ensuite l'utiliser pour exécuter votre commande, par exemple pour xcalc '$ DISPLAY =: 1 xcalc'. Vous pouvez également voir ce qui se passe sur cet affichage: '$ vncviewer localhost: 59XX' – tokland

6

Je suis surpris. J'ai utilisé Selenium et Xvfb plusieurs fois sans problème et beaucoup d'autres utilisateurs le font aussi. Pouvez-vous être plus précis sur votre configuration et les problèmes que vous rencontrez? Comment démarrez-vous Xvfb? Pouvez-vous fournir xvfb.log? Toutefois, pour répondre à votre question, il est possible d'utiliser un serveur X VNC. Voir par exemple this page pour quelques instructions. Il est en fait difficile d'être plus précis sans aucun détail sur votre configuration.

+0

Je suppose que le problème de xvfb était le suivant: http://wiki.maemo.org/Developer_frequently_asked_questions#.22xephyr.22_fails_to_start_in_the_host_with_a_dbus_security_error. xvfb m'a toujours semblé une solution étrange, donc je cherchais une autre méthode de toute façon (bien que VNC pense la même chose: - /). Merci. –

+2

Si vous avez trouvé le problème, alors je suppose que vous avez trouvé la solution, n'est-ce pas? –

+0

Je le pensais. J'ai appliqué pour réparer, ça avait l'air bien, mais c'est toujours cassé. https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/330052 ressemble au problème. –