Anw*_*rni 5 php functional-testing yii yii2 codeception
我在yii2中使用codecept功能测试来测试我的API.我将这些参数硬编码用于测试
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"');
Run Code Online (Sandbox Code Playgroud)
我想通过codecept运行函数loginCept运行测试用例时给出这些参数,或者将这些参数保存在一个文件中,并在运行测试时分配给测试用例.我应该如何实现?
您可以在 path/to/your/project/tests/codeception/config 中创建一个名为 params.php 的文件。然后将参数添加到新创建的文件中:
<?php
return [
'login.email' => 'check@check.com',
'login.password' => '111111'
];
Run Code Online (Sandbox Code Playgroud)
在您的 path/to/your/project/tests/codeception/config/config.php 中放置以下内容:
<?php
return [
'components' => [
...
],
'params' => require(__DIR__ . '/params.php'),
];
Run Code Online (Sandbox Code Playgroud)
在测试代码中使用它就像在常规 Yii 应用程序中调用参数一样。它是否是单元、功能等并不重要。
Yii::$app->params['user.login'];
Run Code Online (Sandbox Code Playgroud)