VS Code에서 플래그를 사용하여 단위 테스트 실행 및 디버깅
VS Code에서 플래그를 사용하여 단위 테스트를 실행하려면 go를 수정하면 됩니다. vscode settings.json 파일의 testFlags 값입니다. 그러나 여기서 발생하는 문제는 테스트 실행 및 디버깅에 필요한 다른 구성입니다.
테스트 실행
필수 플래그로 테스트를 실행하려면 다음 구성을 수행할 수 있습니다. 사용:
<code class="json">"go.testFlags": [ "-ldflags", "-X google.golang.org/protobuf/reflect/protoregistry.conflictPolicy=warn" ]</code>
디버깅 테스트
디버깅 테스트의 경우 구성에서 플래그 주위에 작은따옴표를 포함해야 합니다.
<code class="json">"go.testFlags": [ "-ldflags", "'-X google.golang.org/protobuf/reflect/protoregistry.conflictPolicy=warn'" ]</code>
결합 구성
구성 간 전환을 방지하려면 다음 결합 구성을 시도해 볼 수 있습니다.
<code class="json">"go.testFlags": [ "-ldflags", "'-X google.golang.org/protobuf/reflect/protoregistry.conflictPolicy=warn'", "-ldflags", "-X google.golang.org/protobuf/reflect/protoregistry.conflictPolicy=warn"" ]</code>
디버깅을 위해 Dlv 사용
또는 dlv를 사용하여 테스트를 디버깅할 수 있습니다. 최적화가 비활성화된 테스트 바이너리를 컴파일하려면:
go test -c -ldflags "-X google.golang.org/protobuf/reflect/protoregistry.conflictPolicy=warn" -gcflags="all=-N -l"
헤드리스 dlv 세션 시작:
dlv exec ./foo.test --headless --listen=:2345 --log --api-version=2 -- -count=1 -- $(pwd)/some/path
launch.json 파일을 생성하여 VS Code를 dlv 세션에 연결:
<code class="json">{ ... "configurations": [ { "name": "Debug Test", "type": "go", "request": "attach", "mode": "remote", "port": 2345, "host": "127.0.0.1", "showLog": true, "trace": "log" } ] }</code>
위 내용은 VS Code에서 플래그를 사용하여 단위 테스트를 실행하고 디버그하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!