codeceptionでajax呼び出しを複製できません。例えばコード化、ajaxの動作をシミュレートできません
:
$I->sendAjaxPostRequest('login/verify', array('name' => 'name', 'password' => 'password'));
$I->seeResponseIsJson();
がエラーを発生しません。しかし一方では、私は次の操作を実行した場合:
$I->sendAjaxPostRequest('login/verify', array('name' => 'name', 'password' => 'password'));
$I->seeResponseIsJson();
$I->seeResponseContainsJson(['login_failed' => 1]);
//or
$I->grabDataFromJsonResponse('data.login_failed');
をそれは私に、このエラーを与える:
ErrorException: Argument 2 passed to Codeception\Module\REST::arrayHasArray() must be of the type array, null given, called in C:\xampp\htdocs\blog\laravel\vendor\codeception\codeception\src\Codeception\Module\REST.php on line 485 and defined
私は上記のエラーから理解することはseeResponseContainsJsonまたはgrabDataFromJsonResponseが内部として応答を渡すということですarrayHasArrayの第2引数です。しかし、どんな反応がいつも空であってもそれは見える。私は次の操作を行う場合
また、:
$I->sendAjaxPostRequest('login/verify', array('name' => 'name', 'password' => 'password'));
var_dump($I->grabResponse());
私はのvar_dump()のためにこれを受け取る:Codeceptionで期待通りに他の
object(Codeception\Maybe)#753 (3) {
["position":protected]=>
int(0)
["val":protected]=>
NULL
["assocArray":protected]=>
NULL
}
すべてが動作しますが、私はPhpBrowserを使用しています。