如何自动化 yii2 中的功能测试?

how to automate the functional testing in yii2?

我使用 codecept 功能测试来测试我的 API yii2.I 将参数硬编码以便像这样进行测试

use tests\codeception\backend\FunctionalTester;
$I = new FunctionalTester($scenario);
$I->wantTo('Check when authenticated');
$I->sendPOST('/login', ['password' => '11111111', 'email'=>'check@check.com']);
$I->seeResponseCodeIs(200);
$I->seeResponseIsJson();
$I->seeResponseContains('"result"');
$I->seeResponseContains('"message"');
$I->haveHttpHeader('Accept','application/json');
$I->seeResponseContains('"message":"OK"');

我想在 运行 通过 codecept 运行 功能 loginCept 测试用例时给出参数,或者在我 [=17= 时将参数保存在一个文件中并分配给测试用例] test.How 我应该实现这个吗?

您可以在 path/to/your/project/tests/codeception/config 中创建一个名为 params.php 的文件。然后在新建的文件中加入params:

<?php
    return [
        'login.email' => 'check@check.com', 
        'login.password' => '111111'
    ];

在你的 path/to/your/project/tests/codeception/config/config.php 中输入:

<?php
    return [
        'components' => [
            ...
        ],
        'params' => require(__DIR__ . '/params.php'),
    ];

在您的测试代码中使用它,就像在常规 Yii 应用程序中调用参数一样。不管是unit, functional等等

Yii::$app->params['user.login'];