Обратите внимание, что вы можете запустить go test
«рекурсивно»: вам нужно список всех пакетов, которые вы хотите проверить.
Если есть корневая папка вашего проекта Go, Тип:
go test ./...
'./...
' обозначение описано в разделе "Description of package lists" из "command go
":
Путь импорта - это шаблон, если он содержит одну или несколько «...
» подстановочных знаков, каждая из которых может соответствовать любой строке, включая пустую строку и строки, содержащие слэши.
Такой шаблон расширяется для всех каталогов пакетов, найденных в деревьях GOPATH
с именами, соответствующими шаблонам.
В качестве специального случая, x/...
соответствует x
, а также подкатегории x
.
Например, net/...
расширяется до net
и пакетов в подкаталогах.
Если вы храните ваши _test.go
файлы в папке, команда «go test ./...
» будет иметь возможность забрать их.
Но:
- вам нужно будет префикс экспортируемых переменных и функций (используется в тестах) с именем пакета, для того, чтобы тестовый файл, чтобы иметь возможность получить доступ к пакету экспортироваться контентом.
- вы не получили бы доступ к неэкспортируемому контенту.
Это, как говорится, я бы предпочел сохранить файл _test.go
рядом с основным исходным файлом: его легче найти.
Примечание: 'go test./...' будет запускать тесты в текущей папке * и * во всех подпапках. См. [Мой ответ ниже] (http://stackoverflow.com/a/21725603/6309) – VonC
Возможный дубликат [Как проверить все тесты в моем проекте?] (Http://stackoverflow.com/ вопросы/16353016/how-to-go-test-all-testings-in-my-project) –
Я думал об одном и том же. испытывая трудности с установкой тестов в отдельный каталог, потому что режиссер на том же уровне имеет вспомогательные устройства. –