Перед тем, как опубликовать это, я много проверял на этом сайте и в Google, чтобы понять свою проблему. Я тестирую свое веб-приложение, которое в основном написано на PHP с использованием фреймворка Symfony2.
Я использую Selenium для выполнения своих функциональных тестов. Все, что я хочу сделать на данный момент, - это запустить мои функциональные тесты параллельно на моем локальном компьютере с использованием Selenium Grid. Что я делаю, так это записываю тест в Selenium IDE и экспортирую тестовый пример в формате phpunit. Я пытался использовать селеновую сетку, но мои тесты phpunit все еще выполняются последовательно.
Что я сделал:
1) java -jar selenium-server-standalone-2.24.1.jar -role hub
2) java -jar selenium-server-standalone-2.24.1.jar -role node -hub http://localhost:4444/grid/register -browser "browserName=firefox,maxInstances=2,maxSession=2"
3) ant (муравей)
В моем build.xml есть цель phpunit:
<target name="phpunit" description="Run unit tests">
<exec executable="phpunit" failonerror="true"/>
</target>
В моем phpunit.xml присутствует эта часть кода:
<testsuites>
<testsuite name="LoginSuite">
<file suffix="Test.php">../../src/Tests/FunctionalTests/LoginSuite_testLoginTest.php</file>
</testsuite>
</testsuites>
А мой LoginSuite_testLoginTest.php выглядит так:
<?php
namespace Tests\FunctionalTests;
use Tests\FunctionalTests\SetUpTest;
class LoginSuite_testLoginTest extends SetUpTest
{
public function testLogin()
{
$this->open("/home");
$this->click("link=Login");
$this->type("id=username", "[email protected]");
$this->type("id=password", "test");
$this->click("id=_submit");
$this->waitForPageToLoad("30000");
}
public function testLogin2()
{
$this->open("/home");
$this->click("link=Login");
$this->type("id=username", "[email protected]");
$this->type("id=password", "test");
$this->click("id=_submit");
$this->waitForPageToLoad("30000");
}
}
?>
На третьем шаге, когда я запускаю команду ant, я получаю ошибку причала 500 Проблема с доступом к / selenium-server / driver /
Если вместо выполнения:
java -jar selenium-server-standalone-2.24.1.jar -role node -hub http://localhost:4444 /grid/register -browser "browserName=firefox,maxInstances=2,maxSession=2"
Я делаю ту же команду без информации о браузере, она запускает мои тесты, но не параллельно ..., это странно.
Я видел, что для параллельного запуска тестов phpunit нам нужно создать собственный скрипт для этого. Так нужна ли мне селеновая сетка в этом случае ?? Я очень смущен. Спасибо за вашу помощь.