1

我有 ZF1 站点,我正在使用 phpunit 对其进行测试。
我想从一个测试(登录)存储cookie并将其传递给其他测试(发布消息等)。

或者有什么方法可以设置身份?

此方法不起作用:

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 回答