web-dev-qa-db-fra.com

Jenkins: les tests GUI Selenium ne sont pas visibles sur Windows

Lorsque je lance mon test Selenium (test mvn) depuis jenkins (windows), je ne vois que la sortie de la console. Je ne vois pas les vrais navigateurs s'ouvrir. Comment puis-je configurer jenkins pour que je puisse voir les navigateurs exécutant le test?

34
Rajesh

J'ai la solution. J'ai exécuté jenkins à partir de l'invite de commande en tant que "Java -jar jenkins.war" au lieu de la version du programme d'installation de Windows. Maintenant, je peux voir les tests basés sur mon navigateur en cours d'exécution.

25
Rajesh

J'ai eu le même problème, j'ai obtenu la solution après de nombreuses tentatives.

Si vous utilisez jenkins comme service Windows, vous devez procéder comme suit:

1) Dans le service Windows, sélectionnez le service de Jenkins

Opening Service.msc view

2) Ouvrez la fenêtre des propriétés du service -> Connexion-> cochez la case "Autoriser le service à interagir avec le bureau"

Jenkins properties

Après cela, vous devriez redémarrer le service jenkins

Cette solution fonctionne UNIQUEMENT sur windows XP, j'espère que cela vous aidera :)

30
Shessuky

Si vous faites déjà ce que @Sachin suggère dans un commentaire (c'est-à-dire en regardant la machine sur laquelle Jenkins s'exécute réellement) et que vous ne voyez toujours pas les navigateurs, votre problème peut être le suivant:

Si vous exécutez Jenkins en tant que service en arrière-plan, il n'ouvrira pas les applications au premier plan. Vous pouvez soit essayer de ne pas l'exécuter en tant que service au premier plan, soit l'exécuter en tant que compte système local et cocher Autoriser le service à interagir avec le bureau option. Dans ce dernier cas, vous pouvez cependant rencontrer des problèmes d'autorisation.

pdate: Pour vous assurer que cette réponse est bien comprise par les autres: l'installation "native" de Jenkins Windows n'est pas vraiment native. C'est un wrapper autour de Java qui l'exécute en tant que service.

8
malenkiy_scot

Dans le cas de Windows 7, vous ne devez pas installer jenkins comme application Windows (car dans cette version récente, Microsoft a décidé de donner aux services leur propre bureau caché même si vous activez la fonctionnalité "interagir avec le bureau" dans le service jenkins), vous devrez peut-être déployer à partir d'un fichier de guerre comme suit:

1) Téléchargez jenkins.war depuis site officiel de Jenkins

2) Déployez-le par l'invite de commande: Java -jar {directoryOfJenkinsFile} /jenkins.war

3) Vous pouvez maintenant accéder à l'administration jenkins sur http: // localhost: 8080

J'espère que cela vous aide!

5
Shessuky

Pour interagir avec l'interface graphique du bureau, vous devez lancer l'agent esclave via JNLP: https://wiki.jenkins-ci.org/display/JENKINS/Distributed+builds#Distributedbuilds-LaunchslaveagentviaJavaWebStart

Après avoir ajouté le nœud dans Jenkins (configuré comme Java Web Start), faites simplement un script de démarrage par lots sur la machine du nœud:

Java -jar slave.jar -jnlpUrl http://{Your Jenkins Server}:8080/computer/{Your Jenkins Node}/slave-agent.jnlp

(slave.jar peut être téléchargé à partir de http: // {Your Jenkins Server}: 8080/jnlpJars/slave.jar)

Voir plus de réponses ici: Comment exécuter des tests GUI sur un esclave jenkins windows sans connexion de bureau à distance?

4
Noam Manos

c'est un problème pour Jenkins. sous Windows, il est possible d'accéder à la session (écran) de l'utilisateur de connexion sous le compte système. pour rendre les tests d'interface utilisateur visibles, Jenkins doit contourner UAC (contrôle d'accès utilisateur) en arrière-plan. cette solution fonctionne pour moi avec mon propre service fonctionnant en tant que compte système.

1
user2792870