1

私はZF1サイトを持っており、phpunitでテストしています。
あるテスト(ログイン)からのCookieを保存し、他のテスト(メッセージの投稿など)に渡したい。

または、setIdentityを設定する方法はありますか?

この方法は機能しません:

class IntegrationalTest extends ControllerTestCase {

    protected $identity;

    public function test1()
    {
        // some code here
        $this->assertTrue(Zend_Auth::getInstance()->hasIdentity()); // GOOD
        $this->identity = Zend_Auth::getInstance()->getIdentity();
    }

    public function test2() {
        Zend_Auth::getInstance()->getStorage()->write($this->identity);
        $this->assertTrue(Zend_Auth::getInstance()->hasIdentity()); // FAILED!
    }
}
4

1 に答える 1

2

それを行うことは、単体テストのアイデアと矛盾しています。テストは隔離されています。それらの間で状態を渡すことはありません。環境の設定にはフィクスチャを使用します。モデルをテストする場合は、ControllerTestCase を使用しないでください。代わりに PHPUnit_Framework_TestCase を使用してください。

于 2012-09-29T20:37:10.463 に答える