
Vladimir
15.05.2017
10:56:34
Или завязан на время
Может упростить написание тестов
Не очень, но один из

Alexander
15.05.2017
10:58:01
мне думается что тесты или куски/инструменты тестирования не долны никак всплывать коде который бежит на проде

Google

Vladimir
15.05.2017
10:58:05
Можно сделать абстракцию работы с базой и самому написать для тестирования мок к ней
Так ты как я понимаю можешь на этапе тестов мокнуть функции

Anton
15.05.2017
11:04:48
https://ru.wikipedia.org/wiki/Mock-%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82

Alexander
15.05.2017
11:06:02
я понимаю что это некая концепция которая есть в ООП
но
у меня никогда не было задачи где это могло бы понадобится

Anton
15.05.2017
11:06:49
это нужно в тестировании

Alexander
15.05.2017
11:06:50
поэтому я эту тему не особо понимаю

Anton
15.05.2017
11:07:56
или ты просто тесты не пишешь?

Alexander
15.05.2017
11:08:12
я их пишу но очень редко
я под web пишу
и если задача не про API то там тесты редко нужны

Google

Anton
15.05.2017
11:08:47
а в вебе не используются моки?
ясно

Alexander
15.05.2017
11:09:30
ну я по крайней-мере не видел чтобы кто-то использовал
кроме той статьи на которую ссылка выше есть

Anton
15.05.2017
11:09:44
я всегда считал, что логику клиента всегда нужно тестить

Alexander
15.05.2017
11:10:05
хм, ну если ты с нуля все пишешь то надо
а если ты используешь готовый фреймворк или CMS под которую только отдельные компоненты дописываешь
то тесты туда как-то не очень вписываются

O
15.05.2017
14:46:15
@alex19pov31 Как насчёт тестов твоих отдельных компонентов?

Alexander
15.05.2017
14:52:00
)) можно, но менеджеры на такое время не выделяют

Slava
15.05.2017
14:53:12
плохие менеджеры

Alexander
15.05.2017
14:57:27
вы вебом занимаетесь ?

Ivan
15.05.2017
14:59:10
зачем морочиться с тестированием UI, если оно хорошо покрывается QA?

Anton
15.05.2017
15:00:30
автотесты экономят время человеческих ресурсов

Alexander
15.05.2017
15:00:58
то есть вы все используете capybara, selenium, codeseption и пр. ? Для тестирования внешнего вида ?

Anton
15.05.2017
15:01:35
клиент - это не всегда только внешний вид

Alexander
15.05.2017
15:01:49
равное и даже большое написанию кода который тестируешь

Anton
15.05.2017
15:01:55

Alexander
15.05.2017
15:02:38
не всегда, особенно если речь про UI

Google

Alexander
15.05.2017
15:02:49
когда клиент хочет его переделывать раз в полгода

Ivan
15.05.2017
15:03:32

Anton
15.05.2017
15:04:07
если написать и отдать, то да, возможно тесты не нужны, но тогда вопрос изначально неправильно поставлен

Ivan
15.05.2017
15:04:18
юнит тесты относительно дешевы. Всяки интеграционные, e2e уже требуют инфраструктуры для запуска, сложных моков и т.д. и т.п.

Anton
15.05.2017
15:04:34

Ivan
15.05.2017
15:05:07
что в мелких, что в больших проектах: QA - это дешево, инженер - это дорого :-)
плюс QA все равно нужен, ибо UI тестами все не покроешь и новые фичи не протестишь

Anton
15.05.2017
15:05:58

Alexander
15.05.2017
15:06:09
у меня в задачах имеет ссмысл API покрывать тестами - это оправдывает затраты

Ivan
15.05.2017
15:07:23

Anton
15.05.2017
15:08:30
нет, но примеров вебе куча

Ivan
15.05.2017
15:08:49
а кто говнеца с тестированием UI вкусил, тот уже не настолько категоричен, что "тесты хорошо, тесты полезны, только QA - это плохо"

Anton
15.05.2017
15:11:02
я не говорю, что надо только тестами тестировать, никакого QA

Kirill
15.05.2017
15:11:24

Anton
15.05.2017
15:11:28
я говорю, что странно, что человек то программирования не знает что такое мок

Alexander
15.05.2017
15:11:49
я знаю

Anton
15.05.2017
15:11:59

Alexander
15.05.2017
15:12:35
только не пому для чего он в вебе и в тестах

Google

Anton
15.05.2017
15:12:46
я знаю
"я только начал изучать go и честно горя не представляю для каких целей такое может понадобиться"

Slava
15.05.2017
15:13:06
Какая разница для чего код?
Для веба или кофеварки

Anton
15.05.2017
15:13:35

Slava
15.05.2017
15:13:36
Вычленяешь юнит и тестируешь

Ivan
15.05.2017
15:13:52

Alexander
15.05.2017
15:14:01
ну саму сють мок я понял, что есть несколько окружений и у одного и того же объекта/функции в разных окружениях разная начинка

Slava
15.05.2017
15:14:02
Селениум это уже функциональные тесты

Ivan
15.05.2017
15:14:17

Slava
15.05.2017
15:14:34
Протестируешь

Alexander
15.05.2017
15:14:36

Slava
15.05.2017
15:14:41
Почему нет то?

Anton
15.05.2017
15:14:42

Slava
15.05.2017
15:15:06
Генерит мой реакт дерево, мне же его рендерить не надо, чтобы проверить

Ivan
15.05.2017
15:16:17

Slava
15.05.2017
15:16:21

Sergey
15.05.2017
15:17:51

Ivan
15.05.2017
15:18:14

Alexander
15.05.2017
15:18:26
http://joxi.ru/a2XOa3df1L9D5m.jpg - вот это разве не иструмент для тестирования ? и разве это функциональное тестирование ?

Google

Sergey
15.05.2017
15:18:47

Kirill
15.05.2017
15:19:31

Slava
15.05.2017
15:19:47
Фантом уже всё

Kirill
15.05.2017
15:20:20
Уже что - всё?)

Alexander
15.05.2017
15:20:50

Slava
15.05.2017
15:20:50
Почил в бозе

Kirill
15.05.2017
15:21:19

Ivan
15.05.2017
15:21:23

Alexander
15.05.2017
15:21:34

Kirill
15.05.2017
15:22:00
А есть и кроссплатформенные, с тестированием под любой браузерный движок, если бюджет позволяет - может серьезно подвинуть QA

Ivan
15.05.2017
15:22:27

Slava
15.05.2017
15:22:27

Kirill
15.05.2017
15:23:06

Anton
15.05.2017
15:24:24
здесь не было утверждения, что тесты это позволяют, здесь было утверждение, что в гуе автотесты не нужны


Ivan
15.05.2017
15:33:38
Тесты - это не панацея. Полностью избавиться от ручного тестирования - не получится, я думаю все здесь это понимают.
просто забавно, что все, кто затирает про то, что тестировать UI - это хорошо, тестировать UI - это нужно, в жизни скорее всего никогда этим не занимались. Еще раз, я не говорю про юнит тесты, которые легко пишут и легко поддерживаются. Я говорю про end2end тесты, где надо поднимать все окружение, создавать акки, предзаполнять их данными, потом запускать тесты, которые будут как-то кликать, скролить, менять UI, потом надо как-то проверифицировать, что тест успешно выполнился, словить кучу проблем с нестабильностью тестов, потом нужно подчищать данные и гасить окружение. В конце концов надо сделать, что это работало быстро (иначе никто запускать не будет). И да, все это дело надо постоянно поддерживать, тесты будут постоянно падать и их надо будет регулярно фиксить. И это не могут делать QA, это работой будет заниматься команда инженеров с соответствующей зарплатой.


Anton
15.05.2017
15:34:37
просто забавно, что все, кто затирает про то, что тестировать UI - это хорошо, тестировать UI - это нужно, в жизни скорее всего никогда этим не занимались. Еще раз, я не говорю про юнит тесты, которые легко пишут и легко поддерживаются. Я говорю про end2end тесты, где надо поднимать все окружение, создавать акки, предзаполнять их данными, потом запускать тесты, которые будут как-то кликать, скролить, менять UI, потом надо как-то проверифицировать, что тест успешно выполнился, словить кучу проблем с нестабильностью тестов, потом нужно подчищать данные и гасить окружение. В конце концов надо сделать, что это работало быстро (иначе никто запускать не будет). И да, все это дело надо постоянно поддерживать, тесты будут постоянно падать и их надо будет регулярно фиксить. И это не могут делать QA, это работой будет заниматься команда инженеров с соответствующей зарплатой.
ну мы тут в основном про юнит, тема то с моков началась


Slava
15.05.2017
15:35:58
Если вернуться к теме про моки рантайма го, то кмк, нужда в этом - это показатель непродуманного дизайна

Kirill
15.05.2017
15:36:36
Чуваки, а кто-нибудь юзал пакет jmoiron/sqlx?
Выглядит так, что он решает мою проблему с сопоставлением данных из БД и полей в страктах, но мне пока не ясно какой ценой это достигается, надо читать код пакета

Anton
15.05.2017
15:36:49
просто на само деле, с моками в языках, которые компилируются в машинный код сразу, не все так просто с моками, потому что во время исполнения не очень-то просто менять код