1

第一次使用 PHPUnit 和 Selenium。为 Firefox 安装了 Selenium IDE 插件,使用记录器创建了一些简单的测试。IDE 默认将测试格式化为 HTML 表格,因此我将 PHP 格式化程序插件安装到 Selenium 插件中,并且能够将测试导出为 PHPUnit 格式。接下来在 Windows 7 上安装 PHPUnit。还安装了 PHPUnit 的 Selenium 插件。

然后使用以下命令运行我的测试:

phpunit Mytests.php

输出是:

Time: 0 seconds, Memory: 2.7Mb
OK (0 tests, 0 assertions)

太好了,没有错误,但看起来测试也没有运行。怎么了?是我的测试文件的内容吗:

<?php

require_once 'PEAR/PHPUnit/Extensions/SeleniumTestCase.php';

class Mytests extends PHPUnit_Extensions_SeleniumTestCase
{
  protected function setUp()
  {
    $this->setBrowser("*chrome");
    $this->setBrowserUrl("http://www.foobar.com/");
  }

  public function related_videos()
  {
    // // make sure there are 4 related items
    $this->open("/");
    $this->click("xpath=//div[contains(@id, 'featured')]/article/div/a[contains(@class,'thumb')]");
    $this->waitForPageToLoad("30000");
    try {
        $this->assertEquals("4", $this->getXpathCount("//descendant-or-self::*[@id = 'related']/descendant::article"));
    } catch (PHPUnit_Framework_AssertionFailedError $e) {
        array_push($this->verificationErrors, $e->toString());
    }
  }

}
?>
4

1 回答 1

4

Phpunit 正在测试用例实例上寻找以“ test开头的方法名称,如果您将related_videos 方法重命名为test_related_videos,它应该会找到并运行它。

于 2012-07-20T18:04:10.373 回答