I am new to selenium. I am doing a cross browser testing in a tool called testingbot. When i run my site in their server through selenium ide the test runs till the url is entered in their VM. But after that there is a certificate error and the script is not run after that. The test fails.
Is there any way to handle ssl certificate or bypass it?
Related
Im trying to access a url and run tests which specifically needs client certificate .client certificate is installed in my system and even though if I have multiple certs I’m able to select the one needed for the url and run the tests using selenium automation perfectly in normal mode but when I’m trying to run tests In headless mode it is unable to detect the cert which is installed in my system . Not sure what is the issue but is there any way I could resolve this issue.
I am getting this error “org.openqa.selenium.WebDriverException:unknown error:net :: ERR_SSL_PROTOCOL_ERROR”
Note :
I have tried “AutoselectcertificateforUrls “ As well but it didn’t work I don’t see any configuration settings for chrome
And also I don’t have permissions to download cert in .p12 format
I'm trying to use Fiddler 4.6.2.3 as the proxy for Selenium RC (the standalone server .jar file v2.53.0) in Firefox instead of Selenium RC's built-in proxy. I'm doing this because I want to take advantage of Fiddler's capabilities. I have Fiddler working correctly with Firefox for both HTTP and HTTPS. I have Selenium RC working correctly with the "*firefox" profile using the standalone Selenium RC server .jar file. What I'd like to do is replace Selenium's built-in proxy with Fiddler.
I am launching both Fiddler and Selenium RC from the same .BAT file. I launch Fiddler first, then launch a test suite using the Selenium RC standalone server. When I remark out the Fiddler launch in the .BAT file, the Selenium RC test suite executes perfectly. When I launch Fiddler, then launch the Selenium RC test suite (both from the .BAT file), Selenium RC complains that Fiddler's security certificate is a problem and the Selenium RC test suite fails.
I'm new to the world of automated testing and Selenium. I've tried using the Selenium RC command line option -avoidProxy to see if Selenium RC would somehow "find" Fiddler if it was instructed not to use its built-in proxy. That doesn't work - Selenium RC still complains about the Fiddler security certificate. I also tried using the Selenium RC -trustAllSSLCertificates command line option. That solved the Fiddler certificate problem by completely bypassing Fiddler altogether, which of course prevented the capture of any HTTP and HTTPS traffic by Fiddler.
What I would like to happen is the following:
Launch Fiddler
Launch and run the Selenium RC test suite
Fiddler captures all HTTP and HTTPS traffic as the test suite runs
Use FiddlerScript to export specific headers to a file for later analysis (I know how to do this)
Close Selenium
Close Fiddler
It feels like I've almost got this solution working. Does anyone know how to "connect" Fiddler to Selenium RC. BTW - I know that Selenium RC has supposedly been deprecated in favor of Selenium 2.0 WebDriver. However, the Selenium Website says that Selenium RC is still being maintained and is a usable product, within its constraints. I don't have a need to develop this solution in WebDriver, so if it's possible to replace Selenium RC's proxy with Fiddler that's what I prefer to do.
Thanks In Advance For Your Help -
You can use FiddlerCore in your .NET code.
Look here: FiddlerCore API by Telerik
We test our rails web application with rspec and use the selenium-client (gem version 1.2.18) API in our rspec tests to let selenium RC server (version 2.21.0) steer internet explorer 7 under AP to test our application.
This worked very well until we introduced HTTPS for our login and registration process. Now the user is redirected to the secure version of the login and registration form and afterwards redirected back to the unsecure HTTP site.
For our selenium tests to work with HTTPS and internet explorer 7 we are setting up the selenium driver with "*iexploreproxy" instead of "*iexplore" and use port 4444. We also installed the CyberVillans SSL Certificate as describe here http://blog.mogotest.com/2010/04/13/how-to-accept-self-signed-ssl-certificates-in-selenium/. We run selenium rc server with -trustALLSSLCertificates. This solved the self signed SSL Certificate issues (be aware that selenium RC > 2.21 does not work because of a bug which sets a wrong valid from date).
After that we received "Permission Denied" errors, when running our tests. We found out that this is because of the same origin problem described at http://wiki.openqa.org/display/SEL/Selenium+Core+FAQ under "Why do I get a Permission Denied error when accessing my website via HTTPS?". This problem can be solved by adjusting internet explorers 7 proxy settings and using localhost:4444 to route everything through the selenium RC server. It works, but the problem is that after every test run the proxy settings are reset.
My first question is: How is it possible to make those settings persistent in the internet explorer 7? I read about custom profiles for IE but I haven't found out how to set this up for rspec tests. I also read about a proxy.pac file, but googling for solution without success.
The next problem is that when running our tests we also run into "Access denied" errors by selenium. I have no idea how to solve these and why they occur. So my second question is: How do I get rid of those under the setup described.
How to record scripts in Selenium RC? As of now, it throws security alerts at me (Trusted certificates), I'm so unable to record it. Please help me, how can we overcome this problem?
You have two options
Start the rc with -trustAllSSLCertificates parameters.Your startup command should look like
java -jar selenium-server-standalone.jar -trustAllSSLCertificates
You should create a firefox profile as mentioned here. Be sure to note down the path where the profile is being created. Then open firefox in that profile (refer the same mozilla support page if you don't how to open FF in a profile) and browse your application. You will have then be prompted to accept certificate. Accept the certificate and close the browser. Now manually open firefox using the newly created profile and access the application one more time. It should not show the certificate error now. All you need to do now is to ask selenium to use this new firefoxprofile. This can be done by using the -firefoxProfileTemplate parameter during selenium server startup
java -jar seleniumserver.jar -firefoxProfileTemplate="Path to firefoxprofile folder"
I have recently run into problems using the .NET version of Selenium Webdriver to run tests against a website running in a test environment where the SSL certificate does not match the hostname it’s served from.
To make Firefox accept the SSL certificate while it is controlled by Selenium, I have tried using firefoxProfile.SetPreference("browser.ssl_override_behavior", 1) and firefoxProfile.AcceptUntrustedCertificates but have not been successful.
Is there any other way I can resolve this problem?
Thanks in advance to anyone who can help,
Brett
the way we got around this was hacking local hosts file...