API 테스트 최적화 - 테스트 재구성

지금까지 이전 게시물에서 다양한 HTTP 메서드에 대한 몇 가지 API 테스트를 작성했으며 테스트 사이트에 이미 존재하는 데이터에 의존했습니다. 문제는 기존 데이터가 변경되거나 제거되면 테스트가 중단된다는 것입니다. 이 문제를 해결할 수 있는 방법을 살펴보겠습니다.

현재 테스트 구조



이것이 지금까지 테스트가 구성된 방식입니다.

// GET Tests - uses existing userId to get the user data
// POST Test - creates a new user
// PUT Test - uses existing userId to update the user data
// DELETE Test - uses existing userId to delete the user data


분명히 DELETE 테스트에서는 기존userId을 사용하므로 여러 번 실행할 수 없으며 결과적으로 404 오류가 발생합니다.

테스트 재구성



따라서 테스트를 작성하는 방식을 간단히 재구성하여 위의 문제를 해결할 수 있습니다.

// POST Test - creates a new user and stores a new userId
// GET Test - get the new userId from the POST test
// PUT Test - get the new userId to update the user data
// DELETE Test - get the new userId to delete the user data


여기서 우리가 한 것은 POST 테스트를 맨 위로 이동하여 새 사용자를 만든 다음 나머지 테스트에 userId를 전달한 것입니다. 이렇게 하면 이 테스트 파일을 몇 번이나 실행하더라도 이전 테스트 세트와 달리 항상 작동합니다. 🙌

이제 모든 테스트가 첫 번째 테스트에 종속되기 때문에 이것에도 단점이 있다는 것을 압니다. 하지만 제어할 수 없는 기존 데이터를 사용하는 것보다 이것을 선호합니다. 🤷‍♂️

테스트를 재구성한 방법에 대한 자세한 설명을 보려면 이 비디오를 확인하십시오.





GitHub repo을 복제하여 이 코드에 액세스할 수도 있습니다.


API 테스트에 대해 자세히 알아보려면 여기에서 내 무료 자습서 시리즈를 확인하세요.





이 게시물이 도움이 되었기를 바라며 아래 댓글로 알려주세요!

즐거운 테스트! 😄

...

내 채널 구독
내 작업 지원 - https://www.buymeacoffee.com/automationbro
트위터 팔로우

좋은 웹페이지 즐겨찾기