가져온 패키지에서 재사용 가능한 코드 테스트
여러 패키지와 테스트 파일로 작업할 때 다음 패키지의 유틸리티 기능을 재사용해야 하는 경우가 흔합니다. 하나의 테스트에서 다른 테스트로. 다음 디렉터리 계층 구조를 고려하세요.
/<br>|-- main.go // 패키지 main, 요청을 수락하고 특정 작업을 완료하기 위해 pkg1에서 C/U API를 호출하는 HTTP 서버<br>|-- main_test.go // pkg1_test에서 VeryfyTaskNumber를 호출하려고 합니다<br>|-- pkg1 // pkg1 패키지, 안전을 위해 내보내지 않은 검색 및 삭제 기능이 있는 CRUD API</p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">|-- pkg1_test.go // contains a function verifyTaskNumber(*testing.T, taskName string, expectedNo int) which calls internal Retrieve function in pkg1
이 시나리오에서 main_test.go는 pkg1_test.go에서 verifyTaskNumber()에 액세스해야 하며 다음 과제를 제기해야 합니다. 가져온 패키지의 테스트 코드를 어떻게 효과적으로 재사용할 수 있습니까?
두 가지 일반적인 접근 방식은 다음과 같습니다.
더 효과적인 솔루션은 내부 메서드의 출력을 저장하는 것입니다. 가져온 패키지의 기능을 지원 파일에 추가합니다. 그런 다음 유틸리티 패키지의 해당 함수가 호출될 때 이 파일을 로드할 수 있습니다.
예를 들어 pkg1에 내보내지 않은 Retrieve() 함수가 있는 경우 유틸리티 패키지에서 지원 파일을 로드하는 함수를 생성할 수 있습니다. 그리고 Retrieve()를 호출합니다. 이 접근 방식을 사용하면 유틸리티 패키지의 기능이 모듈화나 빌드 아티팩트를 손상시키지 않고 가져온 패키지의 내부 메서드에 액세스할 수 있습니다.
위 내용은 가져온 패키지에서 테스트 코드를 효과적으로 재사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!