How do I perform automated browser testing with Node.js and two-way ssl?

479 views Asked by At

I'm looking for a module to let me do browser testing on a site that requires two-way SSL. I've successfully tested the API for the site using the client certs provided to me, so I know the certs are good.

I've tried using:

Phatom.js - apparently it doesn't support client certs.

Selenium with the WD module - I don't see how I can pass in the certificate, and for some reason the Firefox instance that starts up doesn't use the certificate I've already stored in Firefox.

Zombie.js - I tried passing in the client certs as options, but kept getting a bad cert error.

Any help would be much appreciated.

1

There are 1 answers

0
user1504877 On

Thanks for the reply, it got me on the right track. I ended up creating a Firefox Profile via the command line: /usr/bin/firefox -P

I created a new profile named Selenium, and started Firefox with that profile. I then imported my cert. Under Firefox Preferences -> Advanced -> Encryption, make sure you select "Select One Automatically" under the Certificates question, otherwise you'll get a popup.

Then, when I want to start the selenium server: java -jar selenium-server-standalone-2.30.jar -Dwebdriver.firefox.profile=Selenium