PHPUnit с селеном - PullRequest
       7

PHPUnit с селеном

2 голосов
/ 02 февраля 2012

Я пытаюсь использовать PHPUnit с селеном

Я запускаю сервер java -jar c: /xampp/selenium-server-standalone-2.18.0.jar

Это мой тест

require_once 'PHPUnit/Extensions/Selenium2TestCase.php';

class WebTest extends PHPUnit_Extensions_Selenium2TestCase {
  protected function setUp() {
    $this->setBrowser("*chrome");
    $this->setBrowserUrl("http://localhost/");
  }

  public function testMyTestCase() {
    $this->url('my/url/index.php');
    $link = $this->byId('1-m-0');
    $this->assertEquals('11', $link->text());
  }
}

Элемент с id = "1-m-0" существует на странице, но тест не пройден, поскольку он получает элемент как ноль.Я пробовал с другими элементами, классом SeleniumTestCase (с тем же сервером), но не удача!

Что я делаю не так?

Ответы [ 2 ]

4 голосов
/ 03 февраля 2012

Хорошо, выяснил это.Вот мой класс сейчас:

class WebTest extends PHPUnit_Extensions_SeleniumTestCase {
  protected function setUp() {
    $this->setBrowser("*firefox");
    $this->setBrowserUrl("http://localhost/");
  }

  public function testPlay() {
    $this->open('http://localhost/my/url/index.php');
    $this->waitForPageToLoad(4000);
    // Wait for ajax to load
    $this->waitForCondition("selenium.browserbot.getCurrentWindow().$('#mytable').length > 0");
    $ids = array(
      '1-m-0',
      '2-n-1',
    );
    // Click ids
    foreach ($ids as $v) {
      $xpath = "xpath=//button[@id='{$v}']";
      $this->assertElementPresent($xpath);
      $this->click($xpath);
    }
  }
}

Эта статья помогла мне: http://devzone.zend.com/1014/acceptance-testing-of-web-applications-with-php/

Я использую этот сервер selenium: selenium-server-standalone-2.18.0.jar

0 голосов
/ 31 мая 2012

Если вы находите библиотеку phpunit немного запутанной, мы создали библиотеку, которая взаимодействует с Selenium Json Wire Protocol, но мы стремились сделать ее максимально похожей на примеры официальной документации.Так что пример с сайта selenium в Java будет иметь почти такой же синтаксис в php.

Проверьте это: https://github.com/Nearsoft/PHP-SeleniumClient

Если вам это нравится, поделитесь им, присоединяйтесь, делайте это или делайте как вам угодно:)

С уважением, Марк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...