PhpStorm에서 효율적 테스트 수행

이 에피소드에서는 PhpStorm에서 PHPUnit, Pest, Behat, Codeception, PHPSpec과 같은 다양한 테스트 프레임워크를 지원하는 방식을 살펴보겠습니다. IDE 내에서 바로 테스트 도구를 실행하고, 테스트 결과를 분석하고, 자동 재실행을 위한 감시 모드를 활용하고, 테스트 파일을 쉽게 생성하는 방법을 알아보세요.

강의 텍스트

여기서는 테스트가 왜 그리고 언제 중요한지에 대해 설명하지 않겠습니다. PhpStorm을 이용하면 테스트가 얼마나 간편해지는지만 보여 드리겠습니다. PHPUnit, Pest, Behat, Codeception, PHPSpec 등 무엇으로 작성하든 IDE에는 이러한 모든 프레임워크가 통합되어 있습니다.

이미 테스트 도구가 준비되어 있다고 가정해 보겠습니다. 터미널에서 실행하지 않아도 PhpStorm에서 테스트 폴더를 선택하고 Control+Shift+R을 누르면 됩니다. 하위 폴더, 개별 테스트 클래스 또는 특정 테스트 메서드에 대해서도 마찬가지입니다. 현재, 코드의 다른 위치에 있고 테스트 도구를 다시 실행하려면 어디서든 Control+R을 누르면 됩니다. 물론, 이 모든 액션은 Shift+Shift 메뉴에서도 찾을 수 있습니다. 간단히 Run(실행)을 검색하면 관련 옵션이 모두 표시됩니다.

PhpStorm의 테스트 창에 테스트 결과가 표시됩니다. 여기에는 실패한 모든 테스트를 다시 실행하는 데 사용할 수 있는 몇 가지 버튼도 표시됩니다. 코드를 변경할 때마다 테스트를 자동으로 다시 실행하는 감시 모드를 설정할 수도 있습니다. 그뿐 아니라, 이 테스트 창 내에서 파일과 메서드를 두 번 클릭하여 실패한 테스트로 빠르게 이동할 수 있으며, 실행 여백 아이콘을 클릭하여 테스트 클래스 내에서 특정 테스트를 다시 실행할 수도 있습니다.

PhpStorm은 테스트에 대한 커버리지도 지원하므로 코드베이스에서 어떤 줄이 테스트 도구로 처리되지 않았는지 확인할 수 있습니다. IDE는 또한 주의가 필요한 부분을 강조하기 위해 여백 내에 시각적 표시기를 보여줍니다.

다음은 제가 좋아하는 기능인, 테스트 파일을 자동으로 생성하는 PhpStorm 기능을 소개하겠습니다. 파일 내에서 Shift+Shift를 누르고 Go To Test(테스트로 이동)를 검색합니다. 이때 이 특정 클래스에 대한 테스트 파일이 있으면 PhpStorm이 해당 파일로 이동하고, 없으면 IDE가 파일을 생성합니다.

그 반대로, 테스트에서 대상으로 이동하는 것도 가능합니다. 동일한 키보드 단축키이며, Shift+Shift를 누르고 Go To Test Subject(테스트 대상으로 이동)를 검색하여 찾을 수 있습니다.

마지막으로, 테스트 작성에 관한 내용입니다. 누구에게나 지루한 작업이죠. 초기 테스트 클래스를 설정할 때가 특히 그렇습니다. PhpStorm에서는 AI Assistant를 사용하여 전체 테스트 클래스를 자동으로 생성할 수 있습니다. 단, 유효한 AI Assistant 라이선스가 있고 AI Assistant 플러그인이 설치되어 있어야 합니다. 클래스 내에서 Alt+Enter를 누르고 AI Actions(AI 액션)를 선택한 다음 Generate Tests(테스트 생성)를 선택하면 됩니다. AI Assistant가 미리보기를 생성해 주므로 필요하면 직접 내용을 세부적으로 수정할 수 있습니다. 간단하지만 시간을 절약할 수 있는 괜찮은 단축키죠.

이제 즐겁게 테스트하세요 :-)