让PhpStorm自动完成在phpUnit的setUp方法中定义的字段。
如果我在setUp方法中定义一个mock:
public function setUp()
{
$this->testRepo = $this->getMockBuilder(TestRepository::class)
->disableOriginalConstructor()
->getMock();
}
当我想在其他方法中使用这个mock时:
public function testExample()
{
$this->testRepo->.... at this point phpStorm does not show autocomplete options
}
我知道phpStorm不知道setUp方法在其他测试方法之前运行,但也许有一种方法可以修复这种行为。
我也不想给每个定义的属性添加phpDoc。我觉得这很健壮,但很难看:
/**
* @var PHPUnit_Framework_MockObject_MockObject
*/
protected $testRepo;
PS: Stackoverflow编辑器是s**t
修改PHPDoc注释如下:
/**
* @var PHPUnit_Framework_MockObject_MockObject|TestRepository
*/
protected $testRepo;
希望对您有所帮助