
Sergey
15.02.2018
21:24:25
но только тематика чата всеравно не та

Konstantin
15.02.2018
21:24:49
да блин
мне гребаный конфиг поправить
я просто слишком в хлам уже

Google

Sergey
15.02.2018
21:25:09
иди поспи)

Konstantin
15.02.2018
21:25:10
кстати
мож ты поможешь ?
нужно щас прост

Vladislav
15.02.2018
21:27:48
пасаны, расскажите про интеграционные тесты? вы пишете? селениумы или шо?)

Konstantin
15.02.2018
21:28:48
codeexception

Sergey
15.02.2018
21:30:07

Bohdan
15.02.2018
21:33:57
хай тестеры пишут
ой, точно, они нихрена не пишут, а потом баг с формой после обновления симфони всплывает через три месяца

Vladislav
15.02.2018
21:35:55
интеграционные тесты не нужны
ну я задал вопрос потому что обизяны иностранные на работе блаблабла, интеграционные тесты. я спорил, рисовал и решил спросит в чате, мож я не прав)

Bohdan
15.02.2018
21:36:23
ну я не уверен, что это должны писать девы

Vladislav
15.02.2018
21:36:53
ну у нас нет тестировщиков

Sergey
15.02.2018
21:36:54

Vladislav
15.02.2018
21:37:20

Google

Vladislav
15.02.2018
21:37:28
фронт на реакте)
ну обизяны

Sergey
15.02.2018
21:37:34
и это нормально, мы сча сами такие начинаем писать, и да у нас фронт тоже на реакте

Vladislav
15.02.2018
21:38:17
окей. какие типы тестов вы вообще пишете?

Sergey
15.02.2018
21:38:27
юниты, e2e
чуть чуть интеграционных там где надо

Vladislav
15.02.2018
21:38:43

Sergey
15.02.2018
21:39:24
ну как не e2e - если ты кликаешь на кнопку и проходит полностью до бэка и реальной базы?

Vladislav
15.02.2018
21:40:22
да, но это единственные тесты который он хотел писать
кстати не вижу смысла тестить фронт типа снэпшоты компонент и что отрендерилось.

Sergey
15.02.2018
21:41:09
смысл есть, просто это где-то 5%-10% от всех тест кейсов которые у тебя должны быть
реакт оч удобно юнитами тестить
но я пока мало юнитов под реакт писал
(

Vladislav
15.02.2018
21:42:20
окей, тогда behat кодсепшн выбрасываем. пишем энд ту энд и гтово?

Alan
15.02.2018
21:42:22
реакт ломается же на раз)
рендер чуть что умирает

Vladislav
15.02.2018
21:42:42
а если апи + клиенты (веб и моб). интеграционные с моб писать не очень.

Google

Alan
15.02.2018
21:42:50
а тесты на снапшотах легко писать

Vladislav
15.02.2018
21:42:56
та я шарю)

Sergey
15.02.2018
21:42:58

Vladislav
15.02.2018
21:43:07
я про то что времени не хватает

Sergey
15.02.2018
21:43:08
некоторые приемочные можно без фронтэнда тестить
но e2e это боль
боооооль
потому их нужно мало
но они увы нужны
только самые важные и критичные фичи и только хэппи юзер флоу
все остальное - юниты

Sergey
15.02.2018
21:44:27
ну или интеграционные если у тебя с кодом все плохо

Vladislav
15.02.2018
21:44:38
так вот вопрос о том что мы не можем писать все типы тестов. нет времени. оставить только энд ту энд?

Sergey
15.02.2018
21:45:18
какой процент от этого времени составляет тестирование? и давай предположим что каждый день тебе надо делать полнй регресс приложения
ну или не полный а хотя бы смоук всего приложения
каждый божий день
скорее всего это будет намного больше времени отнимать, потому каждый день мы смоук не делаем а делаем его в лучшем случае один раз в 2 недели
как думаешь, что быстрее, пофиксить баг когда ты узнал о нем в течении часа после внесения изменений, или через неделю?

Google

Sergey
15.02.2018
21:48:08
и еще, как думаешь, что лучше когда баг находишь ты или клиент?
"нет времени" - это отговорка которая позволяет ничего не делать. Если ты добавляешь тесты в свой проект и при этом у тебя время не экономится, или в целом нет профита - то явно что-то не так)
возможно ты просто бог и тесты тебе не нужны, или ты не эффективно тратишь время на реализацию, или у тебя просто херово тестируемое приложение
по моим мироощущениям юнит тесты вообще оверхэда не добавляют а порой и экономят время (если через tdd)
но только если ты уже умеешь с ними работать
и у тебя более-менее нормальный код

Vladislav
15.02.2018
21:49:59

Sergey
15.02.2018
21:50:06
иначе - да, 2x времени на первые месяца 3 ты получишь

Vladislav
15.02.2018
21:50:08
у них "нет времени" и это не меняется)

Admin
ERROR: S client not available

Vladislav
15.02.2018
21:51:17
ну и 2х в первые 3 месяца вообще не возможно. там проекты за 3-4 месяца уже готовые хотят.

Sergey
15.02.2018
21:51:20

Vladislav
15.02.2018
21:51:32
галера кластер, где галера это корабль, а кластер это работники)

Sergey
15.02.2018
21:51:45
хз, мое мнение - лень надо пересиливать, пойду ка тесты попишу наночь

Vladislav
15.02.2018
21:52:45

Sergey
15.02.2018
21:53:24
e2e тесты - немножко, с этого можно начать

Vladislav
15.02.2018
21:53:46
так это уже не первый проект)

Google

Sergey
15.02.2018
21:53:50
но кто-то другой может начать юниты писать
6 лет тесты пропихивали постепенно

Vladislav
15.02.2018
21:55:23
а, ну тогда нормас)


Роман
16.02.2018
04:36:56
Здравствуйте! Я тут говнокодю немножко. Подскажите кто-нибудь по доктрине вопрос... У меня 2 таблицы Articles и SubArticles. Вторая - это реализация связи многие ко многим c Articles на Articles, только с дополительной информацией об упорядочивании. То есть там три поля parent_id, subarticle_id, order
Мне нужно вытащить по parentId все дочерние статьи, что я пытаюсь сделать так:
$rsm = new ResultSetMappingBuilder($this->getEntityManager());
$rsm->addRootEntityFromClassMetadata(Article::class, 'a');
$query = $this->getEntityManager()
->getRepository(SubArticle::class)
->createQueryBuilder('sub')
->select('sub, a')
->leftJoin('sub.article', 'a')
->where('sub.parent = :parentId')
--setParameter('parentId', $parentId)
->getQuery()
->setResultSetMapping($rsm);
;
SQL, который генерирует эта конструкция вытаскивает мне правильные данные - а вот меппинг по умолчанию идет в сущность SubArticle. А мне надо в Article.
Поэтому ставлю setResultSetMapping(), но он отказывается мэппить и выдает пустой массив...


Елнур
16.02.2018
05:46:23
В селекте попробейте оставить только 'a', и сделать дистинкт
Попробуйте*

Bohdan
16.02.2018
07:50:15
всем утро
ребята, а напомните, пожалуйста, как композицию форм запилить?
пример - есть форма для пароля с регексом, она применяется в трех местах
просто в билдере сделать add и указать соответствующий класс и options для него?

Petr
16.02.2018
07:57:15

Bohdan
16.02.2018
07:57:26
да, уже тоже это дошло
спасибо

Artem
16.02.2018
09:17:13
запилил недавно и может кому пригодиться. асинхронный сервер (amphp, aerys) для генерации PDF из TeXа
https://gist.github.com/ostretsov/7dd76ed02c9611717e858e5ab4070623

Sergey
16.02.2018
09:17:52

Dmitriy
16.02.2018
10:08:44
https://habrahabr.ru/post/349266/
у вас тоже были проблемы с наследованием контроллеров? )))

Bohdan
16.02.2018
10:11:31
нет, я роуты пишу в yml

Dmitriy
16.02.2018
10:14:45
а чо прям нужно было наследование контроллеров?

Alexey
16.02.2018
10:17:59
Парни, есть у нас какой-нибудь Code-Style стандарт распространенный, где бы catch, else и т.п. с новой строки писались?
try {
}
catch (...) {
}
PSR, Symfony - везде на одной строке с закрывающей фигурной скобкой

Bohdan
16.02.2018
10:19:40