سؤال

I'm trying to get a Jenkins slave to open a session on a windows server. Basically, What I'm try to achieve is:

  • Jenkins slave is running as a service on a windows 2003 server. When master calls slave, it will open a desktop session on the server and kick off an .exe that will perform GUI testing

What I have done:

  • Jenkins node created (Node A). Dumb slave. Remote FS root set to path on Windows 2003 server. ("C:\Jenkins\Node"). Launch method Java Web Start
  • Slave 'Node A' installed from Jenkins master using Java Web Start on windows 2003 server
  • Jenkins slave now running as a service on server
  • Jenkins project created and 'Restrict where this project can be run' is set to 'Node A'
    • Project windows batch command 'C:\GUITest.exe'

When I build the project in Jenkins I was expecting that the slave would be able to open a session and run C:\GUITest.exe. But, I'm missing something.

Anyone any ideas, or know if it is possible (plugins I may need ??)

Any advise / direction much appreciated.

هل كانت مفيدة؟

المحلول

Looks like you want to run GUI test on windows session. It won't work if you run Jenkins Slave as service, you have to run JNLP agent on your windows server. Also if you want to run in unattended mode, meaning that the windows remote session would be disconnected, you need some other setup as well. Please provide more information on what you are trying to do.

نصائح أخرى

You must ensure that whatever process runs the GUI tests (might be a java / cmd / ssh process if you're connected to Jenkins) is not running on session 0 as it won't have access to Desktop and the Windows UI in general. I was in a similar situation and running the same process as a scheduled task instead of service solved it for me.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top