我有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!
}
}
答案 0 :(得分:2)
这样做与单元测试理念相冲突。测试是孤立的。你不会在它们之间传递任何状态。使用fixtures设置环境。如果您测试模型,请不要使用ControllerTestCase。请改用PHPUnit_Framework_TestCase。