Я рекомендовал использовать Menta , Selenium 2 Framework, для которого требуется WebDriver .Оба пакета совместимы с PSR-0, поэтому вы можете использовать их с Composer.Вы можете настроить селен с помощью phpunit.xml.Вот пример
<phpunit bootstrap="tests/bootstrap.php"
backupGlobals="false" backupStaticAttributes="false"
strict="true" verbose="true">
<php>
<var name="testing.selenium.seleniumServerUrl" value="http://localhost:4444/wd/hub" />
<var name="testing.selenium.browser" value="firefox" />
<var name="testing.selenium.windowPosition" value="0,0" />
<var name="testing.selenium.windowSize" value="1280x1024" />
<var name="testing.selenium.windowFocus" value="1" />
<var name="testing.selenium.timeoutImplicitWait" value="10000" />
</php>
<testsuites>
<testsuite name="Integrationstests">
<directory suffix="Test.php" phpVersion="5.3.0" phpVersionOperator=">=">tests/integration</directory>
</testsuite>
</testsuites>
<logging>
<log type="junit" target="build/logs/junit.xml"/>
</logging>
</phpunit>
Файл начальной загрузки считывает переменные конфигурации из testing.selenium. *, Поэтому вы можете легко установить новые переменные.
<?php
\Menta_ConfigurationPhpUnitVars::addConfigurationFile(__DIR__ . '/../phpunit.xml');
$configuration = \Menta_ConfigurationPhpUnitVars::getInstance();
\Menta_SessionManager::init(
$configuration->getValue('testing.selenium.seleniumServerUrl'),
$configuration->getValue('testing.selenium.browser')
);
Теперь вы можете легко реализовать свои тестовые случаи,Вот пример
<?php
namespace tests\integration;
use WebDriver\LocatorStrategy;
class TestSearch extends \PHPUnit_Framework_TestCase
{
public function testGoogle()
{
$session = \Menta_SessionManager::getSession();
$session->open('http://www.google.de');
$element = $session->element(LocatorStrategy::NAME, 'q');
$this->assertTrue($element->displayed());
}
}
В пакете Menta также есть два демонстрационных файла, расположенных здесь