Yii2 为什么 PhpStorm 不自动完成单元测试方法



我的测试看起来像:

<?php
namespace backendtestsunit;
use backendmodulescrmmodelsCrmClient;
class ClientTest extends CodeceptionTestUnit
{
    /**
     * @var frontendtestsUnitTester
     */
    protected $tester;
    public function testClientFields()
    {
        $client = new CrmClient();
        $client->setCompany('12345');
        $this->assertTrue($client->validate(['company']));
    }
}

但是通过键入$this->不会显示像assertTrue, assertFalse这样的方法列表,例如,这是正常的吗,我可以让它显示它们吗?谢谢!

你需要调用codeception构建命令,例如。 ./vendor/bin/codecept build为所有套件生成基类。这将生成包含文件夹 /tests/_support/_generated/(基本测试文件夹结构)中的文档的帮助程序函数。

第二种解决方案:将变量传递UnitTester函数中,然后使用它代替$this,例如:

public function testClientFields(UnitTester $I)
{
    $client = new CrmClient();
    $client->setCompany('12345');
    $I->assertTrue($client->validate(['company']));
}

最新更新