mojotech / pioneer

Integration Testing
MIT License
527 stars 35 forks source link

BrowserStack support #305

Closed kilbot closed 9 years ago

kilbot commented 9 years ago

I have just started playing with Pioneer + BrowserStack automated testing. Using the fork by @bluespeckfinancial as a guide I was able to create a build of Pioneer which works with BrowserStack.

The changes I made are available here: https://github.com/kilbot/pioneer/compare/mojotech:master...master

BrowserStack have their own webdriver package for nodejs, but in the basic tests I tried it didn't seem to matter which package you use - both selenium-webdriver or browserstack-webdriver seem to work fine.

kilbot commented 9 years ago

To add to the browserstack-webdriver vs selenium-webdriver issue ... BrowserStack reference the browserstack-webdriver package in their docs, so I guess it may behave differently to selenium-webdriver which may cause problems.

I've created a repo to try and compare the two, it looks like they've moved a bunch of tests and docs around but also changed some core files.

So ... I don't know if it's possible but a BrowserStack + Pioneer solution may have to use browserstack-webdriver as the webdriver package.

kilbot commented 9 years ago

From BrowserStack:

The Browserstack-WebDriver is built upon the Selenium-WebDriver (v2.41.1) with additional keep-alive headers. Keep-alive, also referred to as HTTP connection reuse, uses a single TCP connection to send and receive multiple HTTP requests/responses, as opposed to opening a new connection for every single request/response pair. This helps speed up your tests. This is the only difference between the two.

samccone commented 9 years ago

yeah interesting, almost like we need a way to pick which one to use based on the environment

kilbot commented 9 years ago

It doesn't seem to be a major issue, at the moment I'm running tests on BrowserStack using the Selenium-WebDriver package and it is working okay. Surely at some point someone at BrowserStack will get sick of supporting their own version and figure out a better way to extend the selenium version :pray:

I'll update this thread if I do run into any roadblocks .. but at this stage adding BroswerStack support should work using the same strategy as SauceLabs.

kilbot commented 9 years ago

:+1: :smile:

samccone commented 9 years ago

doing a release right now :dancer: