Go에서 주요 기능 테스트를 실행하는 중에 문제가 발생했습니다.

PHPz
풀어 주다: 2024-02-11 13:00:08
앞으로
517명이 탐색했습니다.

在 Go 中执行 main 函数测试时出现问题

PHP 편집기 Xigua에서는 Go 언어 개발 시 테스트용 주요 기능을 실행할 때 문제가 자주 발생합니다. 이러한 상황으로 인해 프로그램이 제대로 작동하지 않거나 예상치 못한 결과가 발생할 수 있습니다. 이 문제를 해결하려면 가능한 원인을 주의 깊게 해결하고 코드를 수정하기 위한 적절한 조치를 취해야 합니다. 이 문서에서는 개발자가 이러한 상황에 더 잘 대처하는 데 도움이 되는 몇 가지 일반적인 문제와 해결 방법을 소개합니다.

질문 내용

몇 ​​달 전에 이 테스트를 작성했는데 오류 없이 성공적으로 실행되었으며 테스트에서 핸들러 함수만 호출했기 때문에 init() 함수가 실행되지 않았습니다. 하지만 지금은 실패하고 다음 오류가 발생합니다.

으아아아

테스트가 init() 함수를 호출한다는 것을 알고 있지만 더 일찍 호출하면 안 됩니다. 여기서 이해해야 할 것이 빠졌습니까?

init.go

으아아아

main.go

으아아아

main_test.go

/usr/local/opt/go/libexec/bin/go tool test2json -t /private/var/folders/wt/fc27nzn51rdbvwvjzkl05hlc0000gs/T/GoLand/___TestHandleRequest_in_next_api_cmd_getAllRawTransportOrders.test -test.v -test.paniconexit0 -test.run ^\QTestHandleRequest\E$
{"level":"fatal","msg":"no configuration found:  not set","time":"2023-08-27T22:48:03+05:30"}

Process finished with the exit code 1
로그인 후 복사

해결 방법

named init(全部小写)的顶级函数总是,并且总是在测试之前执行。 init 现在失败的原因,即使以前没有,现在看来,是环境的变化;即在 CONFIG_ID가 이전에 설정되었지만 지금은 적어도 테스트가 실행되는 셸에서는 설정되지 않습니다.

https://www.php.cn/link/905d8fc4ffb4275a428a84589810f8f4

-tags test 运行 go test 命令,则将遵守 init.go 文件顶部的构建约束,即 //go:build !test,并且该文件将从测试中省略建造。但默认情况下,没有“test”构建标签,因此如果没有 -tags test 参数,这些构建约束将被忽略,并且 init.go를 사용하면 해당 파일이 테스트 빌드에 포함됩니다. p>

위 내용은 Go에서 주요 기능 테스트를 실행하는 중에 문제가 발생했습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!