Запустите до ВСЕХ интеграционных тестов - PullRequest
0 голосов
/ 17 января 2020

Имеет ли Go какую-либо способность запускать некоторый код перед ВСЕМИ тестами? Я знаю, что Go предоставляет TestMain (), но его пакет забавен c, и будет устанавливать и разбирать только тесты в пакете, где она находится.

Но я хочу запустить несколько docker тестовых контейнеров перед ВСЕМИ тестами и, конечно, разорвать их, когда все тесты будут выполнены.

1 Ответ

1 голос
/ 17 января 2020

Запишите Setup() и TearDown() функции в ваших тестах. Если вы используете тесты на основе таблиц или обычные тесты, вызывайте Setup() и TearDown() в каждом тесте до и после.

Вы также можете использовать тест suite, который выполняет аналогичные функции, вроде как предоставляет такую ​​функцию, как библиотека: https://godoc.org/github.com/stretchr/testify/suite

...