For the communication with phantomjs we are leveraging gastonjs, which is a port of poltergeist, a quite common library in the ruby and java world.
Poltergeist uses direct communication with phantomjs to control the browser.
An alternative approach is to leverage webdriver, a W3C API, which allows you to
control both phantomjs as well as actual browsers like firefox/chrome using selenium.
This would have the following advantages:
- You can easier see what is happening in a real browser
- It is more common than gastonJS to use
- Open an issue in the testbot issue queue to still use phantomjs, but using the
- Use the mink selenium driver, instead of the gastonjs one.
- More details below
User interface changes
Data model changes
Testing if Drupal can run with webDriver  which allowed running tests under real Browsers.
 Bahat official webDriver: http://mink.behat.org/en/latest/drivers/selenium2.html
 Testing with different browsers: http://www.seleniumhq.org/download/
1. Apply patch
2. `composer require behat/mink-selenium2-driver`
1. You can follow http://mink.behat.org/en/latest/drivers/selenium2.html to start selenium2
2. Make sure you have Firefox installed in system DEFAULT dir
3. Run PHPUnit test ( same as current system )
@droplet created a new simple standard test to avoid Drupal issue
4. It started firefox and running tests without any problems.
1. Start `phantomjs --webdriver=4444`
(If you have selenium2, you can run via selenium2 also)
2. Change `firefox` to `phantomjs` in $this->minkDefaultDriverArgs
(@see my patch's comment)
3. Same as above step 3 ~ 4
Chrome & Firefox:
It run with current testbots system smoothly.
Current testbot framework:
It can run but crashed
Unknown errors with Session