Integrated Windows Authentication (IWA) issue on Jenkins slave node in Selenium tests - selenium

Given: We have a Jenkins build running Selenium tests for application using using SSO authentication.Application and authentication provider are located in corporate intranet of type
"auth-service-name.corp-name.com". Tests are running fine on local Windows machine, but on Jenkins windows environment they can't pass IWA to access the tested website. Application tested works ONLY in Chrome, so it is the browser used in tests. In registries of Jenkins machine it was found out that there is a proxy set up, while on local machine there is no proxy.
Tried: sending http requests with login and pass for sso-provider page. starting chrome in jenkins via command line with(start chrome --auth-server-whitelist=
"*corp-name.com")
Question: Is there any way to bypass such an issue? What could cause that Jenkins machine can't pass IWA?

Related

Captcha is present when running selenium automated tests on Windows server

I am trying to run selenium tests on Jenkins hosted on a Windows server. The test starts with Google login, when I try to run them on my local machine it works perfectly fine, but when I run it on Windows server it will ask me to solve the captcha, because of that the tests will fail.
Can I somehow disable captcha from google admin or add that IP to Whitelist, or add some arguments to selenium that will solve this?

How to launch the browser on client side using selenium webdriver

I am new to selenium. I am developed one application using a selenium web driver for doing some actions on the webpage. It's perfectly working when I am running locally i.e., it launches a browser in my machine. I deployed this application on a VM server so the script runs on the server(launched browser in VM Ware Machine), not on the client-side. Can anyone help me with how can I launch the browser on the client-side?
You have to create Hub and Nodes using selenium grid
You can refer this link to see step by step
http://www.seleniumeasy.com/selenium-tutorials/how-to-configure-selenium-grid
Your server will be hub and your client machine will be node
If you trigger from one machine, you can launch a browser on another machine using the selenium-grid concept
But both machines are under the same LAN.
Here you want to execute on the client machine. It is not possible, because your machine and client machine won't be under the same network

Jenkins, running selenium tests on local dev machine

I have a Jenkins server running in private cloud and the dev team want to be able to run some selenium tests on their local dev rigs.
I've looked at Selenium Grid and installed the Selenium Grid plugin for Jenkins and whilst I can get nodes to register to the Jenkins server (Selenium Hub) I cannot invoke tests on the node.
The local dev machines are on our corporate network behind a firewall with no option for that to be changed.
Does the Selenium Hub try to make a new connection to the node when it needs to, or does it/can it use the connection initiated by the node as some kind of reverse tunnel?

Selenium Grid 2 Jenkins CI automation Single sign on application

I am currently working on an application which has single sign on. You have to be logged in using the LAN or internal wireless Network to access the web page. My architecture team has created the Jenkin Job with Selenium Grid for the automation.
We have Jenkins slave created on a remote server. Now, when I try to run my tests, I get the error message and the tests does not run. But when I run the http://www.google.com page, the tests run successfully. Has anyone faced this issue before?

Windows service that interacts with desktop screen resolution

I configured Jenkins as Selenium Grid and some Jenkins Nodes as Selenium Nodes (controlled by Jenkins Selenium plugin).
The nodes are connected with the option "Let Jenkins control this Windows Slave as Windows Service".
The service is defined automatically at the node as "interact with desktop".
Jenkins slave enables Selenium remote driver service
The problem is that the resolution of UI tests is really low (1036 x 780) where we need (1600x1200).
Opening an RDP session doesn't help since the service was started by Jenkins.
How to change the default resolution of windows service that can interact with Desktop?
I had the same problem as yours. Difference was I also have GUI automation besides Selenium tests. I ended up installing VNC service on all the nodes and wrote a script to change the desktop resolution before running any tests. However the highest resolution by doing that we got is 1280x1024, which resolved my problem.
If you don't mind giving up running Jenkins Slave as Windows Service you can use this way:
Jenkins on Windows and GUI Tests without RDC
Still - that would make you maintain an open RDP session that runs Jenkins JNLP process... So that solution is working, but not very optimal.