Yii assertTextPresent无效

时间:2012-02-28 19:16:17

标签: php selenium yii phpunit

以下是我的环境Yii 1.1.10PHPUnit 3.6.0Selenium Server 2.20.0PHP 5.2.17

每次我在Yii应用程序上使用命令$this->assertTextPresent('Foo');。 PHPUnit似乎没有响应,也没有给出反馈。如果我删除了断言,PHPunit正在工作。

怎么回事?


没有回应的例子。

我试图用SiteTest.php测试phpunit(来自Yii的默认测试示例)

这是SIteTest.php的内容

<?php

class SiteTest extends WebTestCase
{
public function testIndex()
{
    $this->open('');
    $this->assertTextPresent('Welcome');
}

public function testContact()
{
    $this->open('?r=site/contact');
    $this->assertTextPresent('Contact Us');
    $this->assertElementPresent('name=ContactForm[name]');

    $this->type('name=ContactForm[name]','tester');
    $this->type('name=ContactForm[email]','tester@example.com');
    $this->type('name=ContactForm[subject]','test subject');
    $this->click("//input[@value='Submit']");
    $this->waitForTextPresent('Body cannot be blank.');
}

public function testLoginLogout()
{
    $this->open('');
    // ensure the user is logged out
    if($this->isTextPresent('Logout'))
        $this->clickAndWait('link=Logout (demo)');

    // test login process, including validation
    $this->clickAndWait('link=Login');
    $this->assertElementPresent('name=LoginForm[username]');
    $this->type('name=LoginForm[username]','demo');
    $this->click("//input[@value='Login']");
    $this->waitForTextPresent('Password cannot be blank.');
    $this->type('name=LoginForm[password]','demo');
    $this->clickAndWait("//input[@value='Login']");
    $this->assertTextNotPresent('Password cannot be blank.');
    $this->assertTextPresent('Logout');

    // test logout process
    $this->assertTextNotPresent('Login');
    $this->clickAndWait('link=Logout (demo)');
    $this->assertTextPresent('Login');
}
}

这是结果

似乎phpunit没有回应任何东西。这是一个例子,如果我创建我自己的测试单元没有断言或任何测试,所以我会得到错误。

<?php

 Class MessageTest extends CTestCase {

 }

 ?>

在这里结果。

1 个答案:

答案 0 :(得分:0)

其他地方可能存在语法错误,请尝试添加

ini_set('error_reporting', E_ALL); // or error_reporting(E_ALL);
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');

到bootstrap.php的末尾