如何使@depends适用于ZF2 AbstractHttpControllerTestCase

时间:2015-07-10 02:06:06

标签: zend-framework2 phpunit

我无法通过依赖性将变量从一个测试单元传递到另一个测试单元。这是我的测试控制器:

<?php

namespace SyncTest\Controller;

use Zend\Test\PHPUnit\Controller\AbstractHttpControllerTestCase;
use PHPUnit_Framework_ExpectationFailedException;

class TestControllerTest extends AbstractHttpControllerTestCase
{
    public function testA()
    {
        $id = 11;
        $this->assertEquals($id, 11);
        return $id;
    }

    /*
     * @depends testA
     */
    public function testB($id)
    {
        $this->assertEquals($id, 11);
    }

}

当我运行phpunit时,它会出现以下错误:

1) SyncTest\Controller\ImageControllerTest::testB
Missing argument 1 for SyncTest\Controller\ImageControllerTest::testB()

关于我做错了什么的任何线索?

1 个答案:

答案 0 :(得分:2)

/* * @depends testA */

不是有效的注释。你必须使用

/** * @depends testA */

否则PHP的Reflection API无法识别它,反过来也不会将它暴露给PHPUnit。