Я понятия не имею, почему PHPUnit продолжает говорить:
The Selenium Server is not active on host http://127.0.0.1:4444/wd/hub at port 4444.
Я запустил свой Selenium Server со своего рабочего стола с помощью этой команды:
java -jar selenium-server-standalone-2.53.0.jar
И я получил этот журнал:
Есть несколько не зарегистрированных водителей. Я не знаю почему, но я просто следовал очень краткому руководству по установке на сайте SeleniumHQ.
Затем я начал пытаться запустить тестовый скрипт PHPUnit, сгенерированный из Selenium IDE, и экспортировал его как PHPUnit_Extensions_SeleniumTest2Case
, Вот как выглядит мой установочный код:
<?php
require __DIR__ . '/vendor/autoload.php';
class Example extends PHPUnit_Extensions_Selenium2TestCase
{
protected function setUp()
{
$this->setHost('http://127.0.0.1:4444/wd/hub');
$this->setPort(4444);
$this->setBrowser("*firefox");
$this->setBrowserUrl("http://localhost/testing");
}
Я продолжал запускать PHPUnit для этого скрипта в подробном режиме, но я понятия не имею, почему он продолжает говорить:
The Selenium Server is not active on host http://127.0.0.1:4444/wd/hub at port 4444.
Я могу получить доступ http://127.0.0.1:4444/wd/hub
через мой браузер без проблем. Итак, я уверен, что мой сервер Selenium уже запущен.
PHPUnit продолжает завершаться с этим результатом:
OK, but incomplete, skipped, or risky tests!
Tests: 1, Assertions: 0, Skipped: 1.
Что еще мне нужно сделать, чтобы заставить работать PHPUnit и Selenium?
setHost()
должна иметь только часть хоста
$this->setHost('127.0.0.1');
Кроме того, я бы предложил использовать простой PHPUnit, PageObjects и немного более активную / поддерживаемую оболочку WebDriver, например PHP-WebDriver поскольку это позволит вам лучше справляться / интегрироваться с поставщиками кросс-браузерного тестирования, такими как BrowserStack.
Но это только мое мнение 🙂
Других решений пока нет …