Комментарии 5
Эх, жаль статья чуть припозднилась. Недавно как раз проходил этот путь, только начав писать тесты к уже работающему коду. И как оказалось, толком найти ничего в инете на эту тему нет. Либо все какое-то жутко сложное, либо слишком примитивное. В итоге набив шишек сам пришел к описанному в статье. Но потратил кучу времени понимая и разбираясь. Сейчас имею практически то, что расписано. Всяческие GoMock и прочие генераторы обошел стороной, ну не привык я к пользованию ими, мне нужно понимание, что делается, как и почему. Поэтому testify прям зашёл, тем более что уже использовал для более простых тестов, без мокирования.
Чего не хватает: хорошего примера, как на таком стеке замокать БД. В принципе у меня уже понимание есть, и туда руки дойдут.
А за статью, ее простоту и понятность хотел бы поставить палец вверх, но по какой-то исторической особенности Хабры это дано только особо активным пользователям. Ну а я читатель
Тоже интересно понять, как в Go базу тестировать. В PHP, к примеру, для тестов поднимается тестовая база, которая наполняется данными. Весьма удобно. Подобный подход делаем и в гошном сервисе.
Чето как-то... Почему именно testify? А не gomock например
А мне testify понравился. Просто и понятно. Gomock хорош тем, что сам генерит моки из интерфейсов. Но для меня все сгенеренное кажется более запутанным, чем довольно легко написанное руками. Опять же, gomock пусть это и не сложно, но надо тащить. testify при этом уже может быть в проекте и дополнительно к нему ничего не требуется. В общем здорово, когда есть выбор.
Mockery ещё навороченнее, чем gomock. Наверное когда-нибудь в проект затащу эту либу.
Тестируем веб приложение на Go