t.me/atinfo_chat Telegram группа по автоматизации тестирования

Подключение PHPUnit_Framework_TestListener


(Blockhead) #1

Всем привет.

Мучаюсь уже несколько дней с установкой своего TestListener для тестов.

Система такая: Selenium RC + PHP + PHPUnit

Создал 3 файла:

1) общий файл (run.php) объединяющий пользовательский слушатель и тесты:

<?php
require_once
'PHPUnit/Framework.php';
 
require_once 't
est.php';
require_once
'SimpleTestListener.php';
 
$suite
= new PHPUnit_Framework_TestSuite('ArrayTest');
 
$result
= new PHPUnit_Framework_TestResult;
$result
->addListener(new SimpleTestListener);
 
$suite
->run($result);
?>
2) тесты (test.php)
<?php
        require_once
'PHPUnit/Framework.php';
        require_once
'Testing/Selenium.php';
         
       
class GoogleTest extends PHPUnit_Framework_TestCase
       
{
           
private $selenium;
           
private $test;
         
           
public function setUp()
           
{
                $this
->selenium = new Testing_Selenium("*chrome", "http://www.google.ru");
                $this
->selenium->start();
           
}
         
           
public function tearDown()
           
{
                $this
->selenium->stop();
           
}
         
           
public function testGoogle()
           
{
                $this
->selenium->open("/");
                $this
->selenium->type("q", "hello world");
                $this
->selenium->click("btnG");
                $this
->selenium->waitForPageToLoad(10000);
                $this
->assertRegExp("/Поиск в Google/", $this->selenium->getTitle());
           
}
       
}
?>
В cmd пишу: "phpunit run.php"
В ответ phpunit выдает тчо то типа:
Class GoogleTest could not be found in test3.php.


В чем косяк? Если класс теста прописать сразу в test.php то ругается на сессию

(Blockhead) #2

Вообще кто ни будь может объяснить как правильно ставить свой TestListener? Может кто поделится готовым тестом?

 


(d3unka) #3

Я делал похожее на java, там листенер можно 3мя способами добавлять.

 

Вот в php нужно разбираться. Сумел нагуглить пример, попробуйте.

Так же в документации есть пример

 

Дайте знать, если получится.


(Blockhead) #4

Спасибо, это ссылки на 2 разных способа подключения листера вроде.

1) способ аналогичный моему - не работает. тест слитает до начала, в чем ошибка незнаю. Возмолжно просто устаревший вариант 2008 года.

2) тут подрубается через настройку xml в  phpunit. У меня не получилось к сожалению его подключит т.к. результат остался прежним - дефолтный вывод((

Прям теряюсь в этом всем(


(d3unka) #5

Для какой цели вам нужен листенер ? Может как-то проще получится сделать. 

 

Еще попробуйте сделать имя файла таким же как имя класса.