Go 테스트를 하위 디렉터리에 구성할 수 있나요?

Susan Sarandon
풀어 주다: 2024-11-17 08:16:04
원래의
317명이 탐색했습니다.

Can We Organize Go Tests in Subdirectories?

하위 디렉토리를 사용하여 Go 패키지 테스트

Go 개발 영역에서 일반적인 질문이 제기됩니다. 작업장 청결도? 이 기사는 이 주제를 조명하는 것을 목표로 합니다.

테스트 방법 및 Go 규칙

전통적으로 Go 문서에서는 프로덕션 코드와 동일한 위치에 테스트 코드를 배치할 것을 권장합니다. 내보내지 않은 프로그램 멤버에 대한 액세스를 단순화할 수 있지만 이 접근 방식으로 인해 작업 공간이 복잡해질 수 있습니다. 그러나 접근성을 유지하면서 테스트를 하위 디렉터리로 분리하는 방법이 있습니다.

재귀적으로 테스트 실행

여러 하위 디렉터리에서 테스트를 실행하려면 "go test"를 활용할 수 있습니다. " 명령에 "./..." 표기법을 사용합니다. 프로젝트의 루트 디렉터리에서 다음을 입력합니다.

go test ./...
로그인 후 복사

이 명령은 프로젝트의 디렉터리 구조를 재귀적으로 탐색하여 만나는 모든 테스트 파일을 식별하고 실행합니다.

별도 디렉터리 고려 사항

테스트가 별도의 디렉토리에 있는 경우 특별한 주의가 필요합니다. 기본 패키지 내에서 내보낸 변수와 함수 앞에 패키지 이름이 붙어 있는지 확인하세요. 이렇게 하면 테스트 파일이 내보낸 콘텐츠에 액세스할 수 있습니다. 또한 내보내지 않은 콘텐츠는 계속 액세스할 수 없습니다.

패키지와 디렉터리 분리

디렉터리를 분리하면 구성이 더 깔끔하게 유지되고 테스트 파일을 기본 소스에 인접하게 유지할 수 있습니다. file은 쉬운 파일 위치를 위한 실용적인 선택입니다.

시간 경과에 따른 코드 적용

CI/CD 파이프라인 내 Go 프로젝트에 대한 집계 코드 적용 통계를 생성하려면 " gocoverstats" 프로젝트.

통합 테스트 적용 범위

Go 1.20부터 적용 범위 도구는 이제 통합 테스트로 확장되어 더 큰 테스트 모음에서 프로필을 수집할 수 있습니다.

대체 테스트 접근 방식

또는 하위 디렉토리가 아닌 별도의 패키지 내에서 테스트를 구성하는 것을 고려할 수 있습니다. "foo" 패키지의 테스트 파일은 "foo_test"라는 패키지에 있으면서도 동일한 디렉터리에 남아 있을 수 있습니다. 이 접근 방식은 "foo" 패키지의 내보내지 않은 멤버에 대한 액세스를 방지합니다.

위 내용은 Go 테스트를 하위 디렉터리에 구성할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿