Запускайте тестовый набор подробно, но исключайте журналы - PullRequest
0 голосов
/ 29 июня 2018

Я разрабатываю пакет, который использует пакет log и регистрирует множество вещей.

Я хотел бы запустить go test -v ./... в моем пакете и вывести список тестов, которые прошли / не прошли без log, которые используются. Это полезно для меня в том факте, что я могу получить обзор всего своего набора тестов, не перегруженный результатами, специфичными для теста.

В документах для go help testflag написано:

    -v
        Verbose output: log all tests as they are run. Also print all
        text from Log and Logf calls even if the test succeeds.

Есть ли способ разделить эти две функции и установить go test на log all tests as they are run без print(ing) all text from Log and Logf calls even if the test succeeds?

1 Ответ

0 голосов
/ 30 июня 2018

Вы не предоставили пример вывода, поэтому я не могу дать code ответ. Но если вы работаете на компьютере Unix, вы можете использовать go test -v ./... | grep <your_patter_of_interest> для извлечения строк вывода с определенным шаблоном.

Простой пример с примером вывода, адаптированный из Как написать код Go :

Сырье:

$ go test

ok      github.com/user/stringutil        0.165s
ok      github.com/your/important/package 0.918s
log: passed a certain milestone
log: my code is great!
ok      github.com/another/great/package  0.124s
warning: hey there!

Отфильтрованный вывод:

$ go test | grep "ok"

ok      github.com/user/stringutil        0.165s
ok      github.com/your/important/package 0.918s
ok      github.com/another/great/package  0.124s
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...