2017-12-22 2 views
-6

CI 용 CircleCi에 내 Golang 프로젝트를 추가하려고합니다. 그러나 테스트 단계가되면 오류가 발생합니다. 그런 다음 Go 프로젝트의 터미널에서 로컬로 'go test'를 실행하려고 시도했지만 다음과 같은 오류가 발생합니다.터미널에서 golang 테스트를 실행할 수 없습니다.

패키지를로드 할 수 없습니다 : 패키지 암호화는 - 비교 - 이동 :/

를 암호화 - 비교 - 이동의/사용자/pocockn/이동/src에 패키지 주 (main.go)와 핸들러 (main_test.go를) 발견

crypto-compare-go는 Go 프로그램을 보유하는 상위 폴더의 이름입니다.

내 시스템에서> SRC>

이동에 따라 때문이다.

다음은 내 프로젝트의 구조입니다.

enter image description here

난 그냥 테스트를 가서 내 프로젝트에서 테스트를 실행 실행하려는. . 또한 이동 테스트를 시도/...하지만

답변

6

귀하의 오류 메시지가 정확하게 문제에 대해 설명 같은 문제가 얻을했습니다

패키지를로드 할 수 없습니다 : 패키지 암호화는 - 비교 - 이동 : 발견 패키지를

동일한 패키지에 두 개의 패키지 선언이 있습니다.이 패키지 선언은 두 개의 패키지 선언으로 구성됩니다 (예 : main.go). 이것은 유효하지 않습니다.

main.go가 있습니다

package main 

main_test.go가 있습니다

package handler 

그들을 일치합니다.

+0

사소한 단점 : 패키지 이름이 "_test"로 끝나는 경우 패키지 테스트 파일에 다른 패키지 선언을 사용할 수 있습니다. 이 경우 테스트는 컴파일되고 테스트중인 패키지와 연결됩니다. 테스트중인 패키지에서 내 보낸 심볼 만 테스트 코드에서 사용할 수 있으므로이 기능을 사용하면 "블랙 박스"테스트를 쉽게 수행 할 수 있습니다. ** TL; "main_test.go"에있는'main_test.go 패키지'를 가지고있는 DR **은 괜찮을 것입니다.하지만이 선언은 파일의 이름과 아무 관련이 없습니다. – kostix

관련 문제