api mock api
8.1
애플리케이션의 API 테스트에 포함할 "제3자 응답을 모의하는 소프트웨어"용 API입니다.
요청을 API 모의에 자동으로 전달하기 위해 Guzzle
용 HandlerStack
사용할 수 있습니다. HandlerStack
요청이 이미 저장되었는지 확인하고 그렇지 않은 경우 해당 요청을 올바른 호스트로 전송한 후 응답을 캐시하여 다음번에 요청이 API 모의로 전송되고 캐시된 응답이 저장됩니다. 반환됩니다.
<?php//...$apiMockClient = 새로운 GuzzleHttpClient([/*...*/]);$apiMock = 새로운 ApiMockCoreApiMock($apiMockClient);$proxyStack = 새로운 ApiMockProxyProxyStack($apiMock);$myDefaultClient = 새로운 GuzzleHttpClient ([/*...*/'처리기' => $proxyStack, ]);// example.org$myDefaultClient->get('https://example.org', [])에 대해 전송됩니다.// API Mock$myDefaultClient->get('https:/에 대해 전송됩니다. /example.org', []);
ApiMock::getClientRequest()
404/null을 가져옵니다. A) 문제의 요청은 애플리케이션에서 호출된 적이 없으므로 requestKey가 포함된 요청은 기록된 적이 없습니다. ApiMock::addResponse()
올바른 순서로 수행되는지 확인하세요. 어쩌면 이전 응답 중 하나가 애플리케이션의 기대치와 일치하지 않아 애플리케이션이 실패할 수 있습니까?
B) API Mock에 대한 요청은 다른 세션 키를 사용하거나 전혀 사용하지 않습니다. 예를 들어 애플리케이션의 일부가 비동기적으로 실행되는 경우(예: 대기열에서) 이런 일이 발생할 수 있습니다. $sessionCacheFile 기능을 사용하여 올바른 세션 키를 검색하세요. (API Mock이 현재 사용되는 세션 키를 덤프한 다음 애플리케이션에서 검색할 수 있는 파일 경로를 제공합니다).