以下是我的环境Yii 1.1.10
,PHPUnit 3.6.0
,Selenium Server 2.20.0
,PHP 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 {
}
?>
在这里结果。
答案 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的末尾