как автоматизировать функциональное тестирование в yii2?
Я использую функциональное тестирование codecept для тестирования своих API в yii2.Я ввел аргументы, жестко закодированные для тестирования, вот так
use tests\codeception\backend\FunctionalTester;
$I = new FunctionalTester($scenario);
$I->wantTo('Check when authenticated');
$I->sendPOST('/login', ['password' => '11111111', 'email'=>'[email protected]']);
$I->seeResponseCodeIs(200);
$I->seeResponseIsJson();
$I->seeResponseContains('"result"');
$I->seeResponseContains('"message"');
$I->haveHttpHeader('Accept','application/json');
$I->seeResponseContains('"message":"OK"');
Я хотел привести эти аргументы во время выполнения тестового набора с помощью codecept, запустить функциональный логин, или сохранить эти аргументы в одном файле и назначить тестовому набору при запуске теста.Как я должен этого достичь?
1 answers
Вы можете создать файл по пути/к/вашему/проекту/тестам/кодированию/конфигурации под названием, скажем params.php . Затем добавьте параметры во вновь созданный файл:
<?php
return [
'login.email' => '[email protected]',
'login.password' => '111111'
];
В вашем path/to/your/project/tests/codeception/config/config.php поместите это:
<?php
return [
'components' => [
...
],
'params' => require(__DIR__ . '/params.php'),
];
Используйте его в своем тестовом коде так же, как вы вызываете параметры в обычном приложении Yii. Не имеет значения, является ли это единицей, функциональным и т.д.
Yii::$app->params['user.login'];