0

フィクスチャを設定しようとしていますが、phpunit システムは次のメッセージ '.E' を返しますが、それをどのように解釈するかわかりません:

C:\kyopol\Apache 2.22.22\htdocs\demo\protected\tests> phpunit unit/EntityTest.php

Sebastian Bergmann による PHPUnit 3.7.14。

C:\kyopol\Apache 2.22.22\htdocs\demo\protected\tests\phpunit.xml から読み取った構成

.E

時間: 2 秒、メモリ: 6.50Mb

1 件のエラーがありました:

1) EntityTest::testRead 未定義の変数: newEntity

C:\kyopol\Apache 2.22.22\htdocs\demo\protected\tests\unit\EntityTest.php:37

失敗!テスト: 2、アサーション: 3、エラー: 1。

次に、クラス テスト EntityTest.php データ コード:

class EntityTest extends CDbTestCase
{   
public function testCreate()
{
    //CREATE a new Entity
    $newEntity=new Entity;
    $newEntity->setAttributes(
        array(
                'name' => 'Test Entity 1',
                'description' => 'Test entity number one',
                'type_id' => 1,
                'location_lat' => 77,
                'location_lon' => 77,
                'create_time' => '2013-02-16 20:36:00',
                'create_user_id' => 1,
                'update_time' => '0000-00-00 00:00:00',
                'update_user_id' => 0,
            )
    );
    $this->assertTrue($newEntity->save(false));

    //READ a Entity
    $retrievedEntity=Entity::model()->findByPk($newEntity->id);
    $this->assertTrue($retrievedEntity instanceof Entity);
    $this->assertEquals('Test Entity 1',$retrievedEntity->name);
}

public function testRead()
    {
        //READ a Entity
        $retrievedEntity=Entity::model()->findByPk($newEntity->id);
        $this->assertTrue($retrievedEntity instanceof Entity);
        $this->assertEquals('Test Entity 1',$retrievedEntity->name);
    }
}

大文字の「E」と前のポイント「.」は何を意味していますか。?

一般的に:phpunitで出力メッセージを解釈する方法を知っていると誰も私に言わなかったでしょうか?

乾杯。

4

1 に答える 1

1

テストの 1 つが失敗しているため、Eが表示されます。もう 1 つは通過中であり、 で示されます. テストにエラー メッセージがある場合は、最後に要約されます。

失敗したテストのエラー メッセージは、「未定義の変数: newEntity」です。

最初の行testRead()は次のとおりです。

$retrievedEntity=Entity::model()->findByPk($newEntity->id);

$newEntityしかし、そのテストでセットアップしたことはありません。

于 2013-02-24T16:55:08.317 に答える