@Naktibalda가 주석에서 말했듯이, 당신은 그 주장을 두 개로 나눠야합니다. 그것을 할 수있는 여러 가지 방법이 있습니다, 하나는 다음과 같습니다
$I->canSeeResponseIsJson();
$data = json_decode($I->grabResponse());
$I->assertArrayHasKey('escrow_status', $data); // might need the assert module
I :
$I->seeResponseJsonMatchesJsonPat('$.escrow'); // you need JSON path module; I would expect seeResponseContainsJson could do it, but it appears that it also needs a value...
$I->seeResponseMatchesJsonType(["escrow_status" => "string|null"]);
또 다른 방법은, 응답이 JSON이라고 주장 배열로 변환하고 해당 배열에 주장을하는 것입니다 테스트에서 배우 클래스를 사용한다고 가정합니다 (따라서 $I
).
다음 명령으로 json 문자열에서 데이터 유형을 확인할 수 있습니까? –
이상적으로 당신은 2 개의 분리 된 테스트를 가져야합니다 - 하나는 필드가 있고 하나는 문자열이고 다른 하나는 필드가없는 것입니다. – Naktibalda