Чтобы запустить мою программу, я должен дать ей несколько аргументов: ./main list
или ./main serve --config=.env.test
. Для этого мне нужно написать интеграционные тесты. Чтобы увидеть тестовое покрытие, я нажимаю кнопку «Запустить с покрытием» в Goland IDE.
Когда я нажимаю «Запуск с покрытием», я вижу, что Goland выполняет следующие команды:
/usr/lib/go/bin/go test -c -coverpkg=./... -covermode=atomic -i -test.run=TestMain -o /tmp/___coverage_test main #gosetup
/usr/lib/go/bin/go tool test2json -t /tmp/___coverage_test -test.v -test.coverprofile /home/admin/.GoLand2019.3/system/coverage/main$coverage_test.out serve --config=.env.test #gosetup
Это дает у меня ошибка: Error: unknown command "/home/admin/.GoLand2019.3/system/coverage/main$coverage_test.out" for "app"
.
Но если я запускаю вручную:
/usr/lib/go/bin/go tool test2json -t /tmp/___coverage_test -test.v -test.coverprofile=/home/admin/.GoLand2019.3/system/coverage/main$coverage_test.out serve --config=.env.test #gosetup
, он работает нормально.
Как я могу сказать Голанду использовать -test.coverprofile=[path]
вместо из -test.coverprofile [path]
. Мне нужно =
здесь.