2013-09-05 32 views
0

我已經下載並安裝了Codeception。我用了以下說明: http://codeception.com/thanks 編寫和運行我碰到下面的錯誤試驗後:Codeception中的致命錯誤

Fatal error: Call to protected method Codeception\TestCase\Test::_before() from context 'Codeception\Subscriber\Cest' in phar://C:/xampp/htdocs/codeceptiontest/codecept.phar/src/Codeception/Subscriber/Cest.php on line 11 

我的單元測試如下:

<?php 
use \CodeGuy; 
use \User; // My own class 

class UserCest extends \Codeception\TestCase\Test 
{ 
    private $user; 

    protected function _before() 
    { 
     $this->user = new User(); 
    } 

    protected function _after() 
    { 
     // Do nothing 
    } 

    // tests 
    public function changeUsername(CodeGuy $I) 
    {   
     $I->wantTo("change my username"); 
     $I->amGoingTo("name my user Tim"); 
     $this->user->setName("Tim"); 
     $this->assertEquals($this->user->getName(), "Tim"); 
     $this->assertTrue(true); 
    } 
} 

當我的課沒有延​​伸\Codeception\TestCase\Test_before()函數未被調用,並且assert函數不起作用。

歡迎任何建議。

+0

字符串是否代表SQL語法:「change」= UPDATE,name = SET,user = COL,Tim = Value? –

+0

不,他們不會表示SQL語法。這些對象根本不會存儲到數據庫中。 –

回答

2

您是否試圖將_before()和_after()公開?

在許多地方Codeception文檔令人遺憾地過時了,最近的一些變化打破了文檔中給出的例子。