@phpgeeks

Страница 4341 из 8430
Evgeniy
24.03.2017
17:21:15
главное запомни юнит тест тестирует только один класс, все остальное в идеале мокается и stub(заглушки) контролируемое поведение должно быть

юнит тест не тестирует зависимости и тд

это уже другие виды тестов)

Google
da horsie
24.03.2017
17:24:51
модуль != класс

Evgeniy
24.03.2017
17:25:00
модуль оО?

da horsie
24.03.2017
17:25:10
unit - модуль

Evgeniy
24.03.2017
17:25:30
модуль в понимание java ?

в php namespace

Sergey
24.03.2017
17:25:36
У меня каждый метод тестируется )

da horsie
24.03.2017
17:25:41
модуль в понимании бизнес-логики

Sergey
24.03.2017
17:25:48
На каждый метод один класс тестов

Evgeniy
24.03.2017
17:25:50
а ну да так согласен)

da horsie
24.03.2017
17:26:07
если вы будете тестировать отдельные классы, но получите сильную связность тестов и кода

и на каждый чих придется править тесты

Google
v
24.03.2017
17:26:50
Нет
как нет?

Sergey
24.03.2017
17:26:59
У меня в модуле есть структура классов, она не может поменяться

Она может стаьь больше или логиас изменится

Но большая часть тестов всегда будет работать

Evgeniy
24.03.2017
17:27:29
ух чувствую холивар

но канонично тесты делать для классов или даже лучше для методов отдельно)

как тут написали

имхо без пруфов

Sergey
24.03.2017
17:28:02
От метода deliveryPrice я всегда жду определенное значение

da horsie
24.03.2017
17:28:12
тестируя классы ты затрудняешь рефакторинг, делаешь код ригидным

Evgeniy
24.03.2017
17:28:35
da horsie
24.03.2017
17:29:12
От метода deliveryPrice я всегда жду определенное значение
модули могут точно помещаться в один класс, это ок. но когда пишешь тест надо понимать, что именно ты тестируешь

Evgeniy
24.03.2017
17:29:13
а пруфы есть в эту сторону

почитаю по другую стороны

тут тонкость понимания слова модуль

Sergey
24.03.2017
17:29:43
тестируя классы ты затрудняешь рефакторинг, делаешь код ригидным
Возможно ты говоришь сейчас о ddd, но это фантастика в моем проекте

Evgeniy
24.03.2017
17:30:11
ddd, tdd еще много букв d

tdd, ddd, bdd

Sergey
24.03.2017
17:30:32
У нас трехкилометровые назвпния классов, никаких неймспейсов, сильнейшая связанность и всё остальное

Google
Evgeniy
24.03.2017
17:30:54
zend ?

Sergey
24.03.2017
17:30:55
Я пишу юнит тесты чтобы быть уверенным, что мои куски раблтают как надо

Evgeniy
24.03.2017
17:30:56
:D

da horsie
24.03.2017
17:31:12
"на пальцах" если, ты тестируешь не класс, а интерфейс, не метод а поведение

Evgeniy
24.03.2017
17:31:34
ммм

юнит тесты на интерфейс

о я этим вопросом многих насиловал

допустим есть A, B оба реализуют I

Sergey
24.03.2017
17:32:09
Что у меня какая-то гибкость потеряется...пф, конь, ее нет и не было. У нас даже куски html в прям в классах есть

Evgeniy
24.03.2017
17:32:15
мне писать IUnitTest

или AUnitTest, BUnitTest ?

da horsie
24.03.2017
17:32:44
Что у меня какая-то гибкость потеряется...пф, конь, ее нет и не было. У нас даже куски html в прям в классах есть
у меня кое-где sql из шаблонов выполняется, это не значит, что не надо стараться сделать лучше)

Evgeniy
24.03.2017
17:32:49
как каноничненько )

da horsie
24.03.2017
17:33:10
мне писать IUnitTest
ты про название или про смысл?

Sergey
24.03.2017
17:33:17
у меня кое-где sql из шаблонов выполняется, это не значит, что не надо стараться сделать лучше)
Я делаю. Модули которые выпадают на меня рефакторю в силу возможностей

Но юнит тесты пользую только чтоьы проверриьь, что все работает как надо

Evgeniy
24.03.2017
17:33:43
ты про название или про смысл?
ну думаю по названию пока, потом от названия смысл понятен надеюсь будет

da horsie
24.03.2017
17:34:06
интерфейс описывает поведение: если дернуть этот метот с таким параметром, то вот тут загорится лампочка такого-то цвета

Evgeniy
24.03.2017
17:34:06
просто хочу поэтапно от простого к сложному

ок

Google
Evgeniy
24.03.2017
17:34:16
согласен

тестируем интерфейс получается

Evgeniy
24.03.2017
17:34:39
и назвать логично IUnit - с этим не согласен

da horsie
24.03.2017
17:34:49
интерфейс это не имя файлика с кодом, а именованное поведение бизнес логики

Evgeniy
24.03.2017
17:35:18
DriverInterface отличный пример бизнес логики

da horsie
24.03.2017
17:35:47
если у тебя есть интерфейс "зажигатель лампочки", то ты его и должен проверять

Evgeniy
24.03.2017
17:36:02
хорошо

у меня есть интерфейс зажигатель лампочки

Admin
ERROR: S client not available

Evgeniy
24.03.2017
17:36:26
и 2 лампочки старая и энерго сберегающая

/
24.03.2017
17:36:49
$type = 'type_message'; if ($type === 'type_1') как сюда регулярку чтоб проверяла только соответвие на type а дальше не важно

v
24.03.2017
17:36:51
это не Unit

Evgeniy
24.03.2017
17:37:18
Unit нинужин
ок, если тебе так будет удобней)

как проверить что они горят?

v
24.03.2017
17:37:48
фотодатчиком

Evgeniy
24.03.2017
17:37:51
в интерфейс зажигания лампочки кинуть метод типо isLight ?

v
24.03.2017
17:38:02
нет

у тебя есть фотодатчик

Google
Evgeniy
24.03.2017
17:38:16
или это на уровне объектов лампочек проверять?

v
24.03.2017
17:38:17
в виде твоего тестирующего инструмента

Evgeniy
24.03.2017
17:38:25
у тебя есть фотодатчик
я вижу ты очень остроумен

v
24.03.2017
17:38:28
он проверяет - загорелась лампочка или нет

не очень

но пожалуй выше среднего по больнице

da horsie
24.03.2017
17:39:03
в интерфейс зажигания лампочки кинуть метод типо isLight ?
ты не лампочки тестируешь, а патрон для них. проверь его на соответствие госту и на то, чтобы напряжение в нем было какое нужно

Evgeniy
24.03.2017
17:39:48
ты не лампочки тестируешь, а патрон для них. проверь его на соответствие госту и на то, чтобы напряжение в нем было какое нужно
нее у нас изначально было включение лампочки, а уже патрон и госты и тд отдельная песня (детали)

у нас есть лампочка (какая то) и мы говорим

гори

/
24.03.2017
17:40:34
на тип? if тип такой то равен != '' или == ''
чтоб проверяло соответсвие до _ а дальше если любой текст шло в это условие

v
24.03.2017
17:40:38
отказать

гори
и смотрим, что говорит фотодатчик

Shadow
24.03.2017
17:41:35
чтоб проверяло соответсвие до _ а дальше если любой текст шло в это условие
preg что то там была функция поищи и засунь в условие если возращает true и внутри ещё проверку

но уже на текст

Shadow
24.03.2017
17:41:56
а проще регуляркой там \w кажется

Evgeniy
24.03.2017
17:42:30
эти детали и есть интерфейс
получается: лампочка->включить(патрон); мы заменяем

общением на стандарты и подачи тока

и тд

Страница 4341 из 8430