
Roman
20.04.2018
14:03:03
кстати насчёт go test...
https://blog.karenuorteva.fi/go-unit-test-setup-and-teardown-db1601a796f2
разве нет возможности задекларировать beforeEach и afterEach нежели самому ручками в каждом кейсе вызывать?
везде вижу только
TestSomething(t *testing.T) {
setup()
defer teardown()
//test
}

FRD Official - Dmitriy
20.04.2018
14:26:07
что это такое вообще
Это то без чего твой код превращается в тыкву ?. А вообще внешние зависимости зло - проверенно собственной тощей жопой

Google

Roman
20.04.2018
14:26:57
после каждого теста нужно сбросить сессию соединения
не, можно конечно в каждом тесте новый клиент открывать, но это не айс

FRD Official - Dmitriy
20.04.2018
14:28:15
integration testing
Ну тут, вопрос спорный, чем гибче язык - тем больше нужно контроля и в то же время, больше пространства для маневров.

Roman
20.04.2018
14:29:09
у меня сейчас на кастомном ранере, не на go test работают тесты, но я хочу таки перейти снова на стадартный tool chain

FRD Official - Dmitriy
20.04.2018
14:30:24
Тут как бы могу судить только по своему опыту (мобилки/рельсы), но чем проще заявляется тестирование, тем сложнее становятся тесты с усложнением проекта.

Roman
20.04.2018
14:31:20
в каком смысле "заявляются"
integration test'ы нам нужны чтоб проверять API
хотя наверное правильнее будет называть их "acceptance test"ами

FRD Official - Dmitriy
20.04.2018
14:36:12
в каком смысле "заявляются"
В смысле: "Пацаны, мы разработали фрэймворк для тестирования контроллеров , написать тест - как два пальца об асфальт и не надо трахать мозг и ломать пальцы", в жизни это выглядит так. Легко накидать тест на очень примитивный кейс, но стоит задуматься о error-рейтах, сообщениях от шедулера а-ля "сейчас допрыгаешься", и все превращается в адскую головоломку.
Извини что наполовину на аглицком, но при переводе могут возникнуть непонятки

Google

Roman
20.04.2018
14:38:21

Evgenia
20.04.2018
14:38:24
120-150 нет

Roman
20.04.2018
14:39:12
excuse me?

FRD Official - Dmitriy
20.04.2018
14:40:25
Кстати, а кто нибудь пытался составить словарь англо-русский, касающийся таких терминов? Не я не про "ногомяч" и "бассейн", а реально привести соответствующие синонимы, чтобы не изъясняться, как малограмотные "менеджеры-по-продажам".

Roman
20.04.2018
14:40:48
В смысле: "Пацаны, мы разработали фрэймворк для тестирования контроллеров , написать тест - как два пальца об асфальт и не надо трахать мозг и ломать пальцы", в жизни это выглядит так. Легко накидать тест на очень примитивный кейс, но стоит задуматься о error-рейтах, сообщениях от шедулера а-ля "сейчас допрыгаешься", и все превращается в адскую головоломку.
честно говоря не понимаю о чём ты...
у нас есть API, есть ожидаемые данные, делаем запросы на определённые ноды графа, проверяем результаты. просто нужны beforeEach и afterEach функции, которые не понимаю как реализовать на стандартном go test

FRD Official - Dmitriy
20.04.2018
14:43:06

Roman
20.04.2018
14:44:49
но я размышляю как реализовать тоже самое на go test

FRD Official - Dmitriy
20.04.2018
14:53:00
Извини, но без кода, я что-то не въезжаю, в чем проблема.

Roman
20.04.2018
14:54:12
можно конечно самому ручками в каждом Test вызывать, но это не айс

FRD Official - Dmitriy
20.04.2018
14:57:59
В тестах можно объявлять и глобалы и init. И собственно, обвязать как угодно. Давай, чтобы твою епархию не палить, обвяжем тестами какую нибудь гипотетическую фигню. Ну так чтобы продуктивней, а то что-то трясем воздух, трясем, а до точки что-то недотрясываемся.

Roman
20.04.2018
14:59:43
если в стандартной go test не возможности автоматически выполнять до/после то мы лучше оставим на кастомном ранере

FRD Official - Dmitriy
20.04.2018
15:01:50
дак придётся ручками вызывать
Да, прийдется. А еще потом можно ручками отбенчить, выявить "бутылочное горлышко", найти того кто его написал, и попросить его быть поаккуратней. Иначе зачем выбирать Go?

Roman
20.04.2018
15:02:31

FRD Official - Dmitriy
20.04.2018
15:08:28
а чем тогда наш test runner хуже go test?
Гибгостью наверное. Но посмею предположить, что в Go вы пришли не из C/C++, а из более высокоуровневых языков. Нет, это никак вас не умаляет, просто надо немного сменить привычки. Писал когда ты запостил скриншот. Разреши "доебаццо" :). Какой из этих тестов показал степень устойчивости? А на фаззинг? А на предполагаемые трики?

Roman
20.04.2018
15:09:16

Marlik
20.04.2018
15:10:18

Google

FRD Official - Dmitriy
20.04.2018
15:10:25
Почти то-же самое,

Roman
20.04.2018
15:10:27

Makkusu
20.04.2018
15:11:50
Добрейший вечерочек! Помогите пожалуйста. Нужно ли создавать демона, чтобы запускать go исполняемый файл в фоне? Или можно просто запустить исполняемый файл и ждать пока выполнится? Если создать демона то как?
Мне нужно запустить программу на сервере, чтобы она отработала в фоне с логами.

FRD Official - Dmitriy
20.04.2018
15:11:57

Makkusu
20.04.2018
15:13:16
Зачем тебе демон?
Мне сказали, чтобы выполнить процесс/программу в фоне нужно сделать демона
Я хочу запустить скрипт и отключиться от сервера
от ssh

Marlik
20.04.2018
15:13:53

Roman
20.04.2018
15:14:49

Marlik
20.04.2018
15:14:53

Makkusu
20.04.2018
15:14:56

Makkusu
20.04.2018
15:15:09
А что с логированием? Как ту можно реализовать?
Через сторонние библиотеки или запись в файл?

FRD Official - Dmitriy
20.04.2018
15:15:36

Makkusu
20.04.2018
15:16:17

Marlik
20.04.2018
15:16:25

Sergey
20.04.2018
15:16:49

Makkusu
20.04.2018
15:16:49

Google

Marlik
20.04.2018
15:17:40

Sergey
20.04.2018
15:19:33
нохап будет стдаут и стдерр в файл писать

Makkusu
20.04.2018
15:19:52

FRD Official - Dmitriy
20.04.2018
15:20:16

Makkusu
20.04.2018
15:20:24

Roman
20.04.2018
15:21:12

Admin
ERROR: S client not available

FRD Official - Dmitriy
20.04.2018
15:38:10

Andrii
20.04.2018
15:42:28
Кто имеет пример кода с функциями для базы данных postgresql , удалять элементы, добавлять, зчитувать и тп и как подключатса к ней не локально?

FRD Official - Dmitriy
20.04.2018
15:42:38
acceptance API testing
И если честно, меня вот этот "аккцептанс", жутко коробит - были ситуации, когда по тестам все радужно, вокруг единороги срут радугой, а потом Дима заморачивается с фаззингом и кладет продакшн сервер. Надеюсь у вас не так

Roman
20.04.2018
15:43:19

FRD Official - Dmitriy
20.04.2018
15:43:28

Andrii
20.04.2018
15:45:17
Да но там примеры для каждой функции отдельно, а мне интиресно как ето совместить через пакеты или просто прописивать в одном пакете все функции

Roman
20.04.2018
15:46:13

Artem
20.04.2018
15:49:15

Roman
20.04.2018
15:49:56
хотя, нужно начать с другого вопроса: что даёт go test чего не даст кастомный ранер?

Google

FRD Official - Dmitriy
20.04.2018
15:51:04

Roman
20.04.2018
15:52:16

FRD Official - Dmitriy
20.04.2018
15:52:30

Artem
20.04.2018
15:53:08

Roman
20.04.2018
15:53:09

FRD Official - Dmitriy
20.04.2018
15:53:10

Roman
20.04.2018
15:54:33

Roman
20.04.2018
15:55:56

Artem
20.04.2018
15:57:59

Roman
20.04.2018
16:04:14

Roman
20.04.2018
16:06:25
Если вам BDD более близок, то я думаю нет смысла спорить. Вопросы предпочтения конкретной команды/человека
ginkgo правда уже есть

FRD Official - Dmitriy
20.04.2018
16:07:41

Sergey
20.04.2018
16:08:04

Roman
20.04.2018
16:08:43

Roman
20.04.2018
16:09:06

Artem
20.04.2018
16:09:22
если раннер - надстройка над go test, то пофигу, иначе -- все фичи точатся под ванильный go test и кастомный раннер будет превращатся в легаси

Roman
20.04.2018
16:09:34