Size: a a a

2020 December 11

AS

Alexey Shumkin in Go-go!
Kirill Saltykov
Да я попробовал хоткеи добавить, в целом и на GoLand можно жить. Запоминать их правда придется
Дорогу осилит идущий :)
источник

ЯК

Ярослав Коробейников... in Go-go!
Alexey Shumkin
А проблема в чём?
Да в целом я пока не могу найти примеров того как это лучше делать, везде Mock, Mock, Mock.... И вот непонятно, неужели делать всё на моках, или есть вариант с использованием реально поднятого инстанса эластика Как обычно хотелось бы атомарность тестов и консистентность данных в эластике ну и очистка данных перед тестом тоже, вот и интересно кто-нибудь такое делал или нет?) Или вы тоже всё Мокаете?
источник

ВС

Владимир Столяров... in Go-go!
Ярослав Коробейников
Всем доброго!
В сервисе используем Эластик с либой olivere/elastic и тут настал интересный вопрос что хотелось бы как-то тестировать запросы (сервис свежий, пилился лишь бы работал) в эластик. Причём желательно не мокать...
Аля поднимаем в докере эластик и запускаем тесты в тестах загружаем какие-то условные индексы с данными в эластик и начинаем чекать что наши методы возвращают то что мы ожидаем, кто-нибудь делал что-нибудь похожее?
Делаем подобное с postgres. В одних проектах через связку dockertest+testify, в других через docker compose (главное не забыть пробросить порт с хоста, чтобы можно было запускать тесты прямо из ide)
источник

ЯК

Ярослав Коробейников... in Go-go!
Владимир Столяров
Делаем подобное с postgres. В одних проектах через связку dockertest+testify, в других через docker compose (главное не забыть пробросить порт с хоста, чтобы можно было запускать тесты прямо из ide)
Ваша фамилия ассоциируется у меня с компанией Флант ;D думаю вам стоит доверять)
источник

ЯК

Ярослав Коробейников... in Go-go!
Владимир Столяров
Делаем подобное с postgres. В одних проектах через связку dockertest+testify, в других через docker compose (главное не забыть пробросить порт с хоста, чтобы можно было запускать тесты прямо из ide)
При этом вы тесты можете запускать в параллели? (просто интересно)
источник

ВС

Владимир Столяров... in Go-go!
Ярослав Коробейников
Ваша фамилия ассоциируется у меня с компанией Флант ;D думаю вам стоит доверять)
Не, я не оттуда)
источник

ВС

Владимир Столяров... in Go-go!
Ярослав Коробейников
При этом вы тесты можете запускать в параллели? (просто интересно)
Да. Есть несколько подходов: тупо запускать несколько контейнеров с базой или же делать create database / drop database
источник

АД

Алексей Долгов... in Go-go!
Ярослав Коробейников
Всем доброго!
В сервисе используем Эластик с либой olivere/elastic и тут настал интересный вопрос что хотелось бы как-то тестировать запросы (сервис свежий, пилился лишь бы работал) в эластик. Причём желательно не мокать...
Аля поднимаем в докере эластик и запускаем тесты в тестах загружаем какие-то условные индексы с данными в эластик и начинаем чекать что наши методы возвращают то что мы ожидаем, кто-нибудь делал что-нибудь похожее?
это интеграционные тесты. зависит от ci/cd которого юзаете, если юзаете.
dockertest в целом неплох, но с gitlab CI не особо дружен. если gitlab, то проще в джобах поднять нужные контейнера. а для локального прогона тестов поднимать контейнера самому ручками
источник

ВС

Владимир Столяров... in Go-go!
ну нам дали сокет в контейнер, так что пользуемся им)
источник

ЯК

Ярослав Коробейников... in Go-go!
Алексей Долгов
это интеграционные тесты. зависит от ci/cd которого юзаете, если юзаете.
dockertest в целом неплох, но с gitlab CI не особо дружен. если gitlab, то проще в джобах поднять нужные контейнера. а для локального прогона тестов поднимать контейнера самому ручками
Ну это да, в том плане что инстанс докера с эластиком уже будет поднят.

Как тесты в какой-нибудь джанге, они же сами бд не поднимают, они конектятся в существуещей поднятой бд, нет бд нет тестов)
источник

АД

Алексей Долгов... in Go-go!
Владимир Столяров
ну нам дали сокет в контейнер, так что пользуемся им)
как вариант. неплохо
источник

АД

Алексей Долгов... in Go-go!
Ярослав Коробейников
Ну это да, в том плане что инстанс докера с эластиком уже будет поднят.

Как тесты в какой-нибудь джанге, они же сами бд не поднимают, они конектятся в существуещей поднятой бд, нет бд нет тестов)
в TestMain инициализируете тестовые ресурсы - базы, эластики. прогоняете тесты. ну соединения с базами и т.д. в TestMain можно
источник

Z

Zver in Go-go!
Alexey Shumkin
А какие требования к нему?
Я вообще консоль юзаю... Для решения конфликтов только kdiff3...  На автомате... хотя сейчас подумал, надо бы goland настроить под это
Спрашивают про перфоратор, а вы рассказываете, что молотком пользуетесь. 😏
источник

R

Russia9 in Go-go!
Kirill Saltykov
А кто юзает какие GUI клиенты для Git на Linux?
Для Win/macOS юзал Fork, а вот сейчас не знаю что взять
Либо GoLand либо GitKraken, а вообще обычно из терминала
источник

М

Михаил in Go-go!
Kirill Saltykov
А кто юзает какие GUI клиенты для Git на Linux?
Для Win/macOS юзал Fork, а вот сейчас не знаю что взять
Кракена бери
источник

KS

Kirill Saltykov in Go-go!
Zver
Спрашивают про перфоратор, а вы рассказываете, что молотком пользуетесь. 😏
Хоть кто-то меня понимает)
источник

Z

Zver in Go-go!
Михаил
Кракена бери
Он же только на открытых проектах, если free версия.
источник

М

Михаил in Go-go!
Zver
Он же только на открытых проектах, если free версия.
Как и fork. Да и вообще я не призывал никого пиратить
источник

V

Vlad in Go-go!
Владимир Столяров
Делаем подобное с postgres. В одних проектах через связку dockertest+testify, в других через docker compose (главное не забыть пробросить порт с хоста, чтобы можно было запускать тесты прямо из ide)
А таким не пробовали?https://golang.testcontainers.org/
В мире джавы testcontainers популярны. Позволяют не запускать ручками в дев разработке, а цепляются к жизненному циклу теста
источник

ВС

Владимир Столяров... in Go-go!
пробовал, в принципе тоже неплохо
источник