2013-06-06 4 views
0

Я пытаюсь получить массив элементов, используя xpath, и загрузить результаты в массив, а затем выполнить assertCount(). Вот код, который у меня есть. Я новичок в этом, и я не уверен, почему elementList пуст?PHPUNIT работает на сервере selenium

<?php 

require_once('Base.php'); 

class FollowupTest extends Test_Base { 

    protected $session = null; 

    /** 
    * Asserts that the count of list elements on the page is equal 
    * to three utilizing an xpath expression. 
    */ 
    public function testCountListElements() { 
     $elementsList = $this->session->elements('xpath', '//li'); 
     $this->assertCount(3, sizeof($elementList)); 
    } 
} 
+0

могли бы вы предоставить более подробную информацию? Какой сервер Selenium вы используете? Используете ли вы библиотеку (например, расширение PHPUnit_Selenium) для Selenium API? Что такое Test_Base? Это ваш собственный класс? – qrazi

+0

Я использую сервер selenium 2.25.0 (Webdriver). Test_Base - это класс в phpunit. Это не обычай. $ elementList должен быть массивом, и мне нужно загрузить его с элементами, полученными из $ this-> session-> elements ('xpath', '// li') – user2461678

+0

Ну, я не эксперт, но я думаю, что вы должны расширение Selenium2TestCase. session() доступен для этого класса. Я думаю, что руководство должно обеспечить хорошее начало: http://phpunit.de/manual/current/en/selenium.html. – qrazi

ответ

1

Если продлить PHPUnit_Extensions_Selenium2TestCase, вы можете рассчитывать элементы с этим structure:

$elements = $this->elements($this->using('xpath')->value('//li')); 
$this->assertEquals(3, count($elements)); 
Смежные вопросы