0

This question has been originally asked in Stackoverflow but then I decided it might fit Serverfault better so I moved it here.

I am trying to rearrange my Jenkins projects by moving some of them to a slave node. My problem is that the very same project runs well when executed on master and fails with a cryptic error on the slave where I'm trying to move it to. The issue is not with Jenkins itself as I get identical results running this manually in a shell.

The error I get on the slave is:

PHPUnit_Extensions_Selenium2TestCase_Exception: There is currently no active session to execute the 'url' command. You're probably trying to set some option in setUp() with an incorr
ect setter name. You may consider using setUpPage() instead.

That would normally indicate that the code ne but the exact same project yields no errors on the master node and tests run successfully.

What I've tried so far:

  • Change PHPUnit version on the slave node to the version used on master (it's 4.4.1 on master, 4.5.0 on slave). No success, it still builds on master and fails on slave, yielding the same error.
  • Diff PHP5 configuration files from both machines. No differences are in evidence.

Please note that I do not write the tests, I just took over maintaining the Jenkins cluster. There must be some trick in the environment that makes the difference but I am unable to narrow it down. Running phpunit with --verbose or --debug does not help either.

  • The first thing you should do is to debug the test case, not the server. – Michael Hampton Mar 3 '15 at 14:44
  • @MichaelHampton You're probably right but I'm interested in finding what particular element of the server causes the test to be successful on one system and fail on another. Plus, please note that I do not write the tests, as noted in the question. – Erathiel Mar 3 '15 at 14:46
  • Find whoever does write the tests, then. I have doubts that anyone here will be able to give you a good answer for this. – Michael Hampton Mar 3 '15 at 14:54
0

Luckily I've managed to find a solution. It turned out that the slave had no internet browser installed. aptitude install iceweasel and then restarting Selenium server did the trick -- now the tests run smoothly.

So simple, yet so frustrating. Hopefully this will save someone else their precious time if they stumble upon a similar issue.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.