powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Java [игнор отключен] [закрыт для гостей] / Удаление записей соответствующих условию из БД в Hibernate
25 сообщений из 168, страница 4 из 7
Удаление записей соответствующих условию из БД в Hibernate
    #39972206
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Ну я написал 2 теста к примеру. Какие из этого следуют выводы?


Покрытие юнита 100% ?
Покрытие логики 100% ?

Если так, значит ваш юнит скорее всего соответствует SoR.
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972208
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У нас с тобой все таки разное понимание тестирования. У меня количество тестов соотвествует
количеству бизнес-сценариев. Я взял 1 логику и доказал ее формальную правоту с помощью
двух сценариев.

Следует из этого или нет SingleResp - я пока не знаю. Не уверен.
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972242
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий Мух
Открой для себя шаблон Спецификация.

- хрен редьки не слаще. Просто перенос сложности в другое место - вместо кучи методов, куча классов.
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972243
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79,

Действие по БЛ не равно методу класса
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972313
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zzz79


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


Для этого есть другие страшные аббревиатуры DI и IOC ;-)
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972346
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
У нас с тобой все таки разное понимание тестирования. У меня количество тестов соотвествует
количеству бизнес-сценариев. Я взял 1 логику и доказал ее формальную правоту с помощью
двух сценариев.


Я не знаю как можно юнит-тестирование понимать иначе.

Бизнес-сценарии и юнит-тесты вообще ортогональны друг другу. Их количество никак между собой не взаимосвязано.


mayton
Следует из этого или нет SingleResp - я пока не знаю. Не уверен.


Юнит-тесты покрывают код. Они тестируют реализацию юнитов, компонентов. При чём тут сценарии?

Возьмём самый простой случай. Проверка ИНН на корректность. Есть компонент, который выполняет одну простую задачу, проверяет этот самый ИНН на корректность. Используется совершенно в разных бизнес-сценариях.

Если этот компонент кроме проверки ИНН, будет ещё что-нибудь делать, например, проверять е-мейл до кучи, а также отправлять смс-ки, то это будет нарушением SoR.

Мне трудно вообще вписаться в картину мира, где SoR вызвает такие проблемы. Реал. Это прям какое-то зазеркалье )
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972350
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хорошо. Вот у тебя есть главный компонент. Application. Он контейнером в себя включает все другие
компоненты.

Как ты тестами покажешь что у него - SoR?
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972359
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Хорошо. Вот у тебя есть главный компонент. Application. Он контейнером в себя включает все другие
компоненты.

Как ты тестами покажешь что у него - SoR?


Конечно, ведь Application не содержит всю логику внутри себя, а вызывает реализацию через соответствующие абстракции.

Юнит-тест должен гарантировать, что эти абстракции будут вызваны правильно, а результат правильно обработан. Вместо реализации абстракций подставляются моки или стабы.
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972363
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt
mayton
Хорошо. Вот у тебя есть главный компонент. Application. Он контейнером в себя включает все другие
компоненты.

Как ты тестами покажешь что у него - SoR?


Конечно, ведь Application не содержит всю логику внутри себя, а вызывает реализацию через соответствующие абстракции.

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


OK. Я зайду с другой стороны. Ты закрыл все дочерние объекты Application моками. И дальше прогнал тесты
ты такой говоришь. "Окей ребята. Ща я докажу что у Application - одна единая отвественность"

И... я дальше ожидаю словесной формулировки. Какая?
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972369
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
hVostt
пропущено...


Конечно, ведь Application не содержит всю логику внутри себя, а вызывает реализацию через соответствующие абстракции.

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


OK. Я зайду с другой стороны. Ты закрыл все дочерние объекты Application моками. И дальше прогнал тесты
ты такой говоришь. "Окей ребята. Ща я докажу что у Application - одна единая отвественность"

И... я дальше ожидаю словесной формулировки. Какая?

Как показать, что Application "вызывает реализацию через соответствующие абстракции"?

Это будет пачка тестов вида:
Application_ShoudCallComponentOne_When...
Application_ShoudCallComponentTwo_When...

Когда сто процентное покрытие тестами такого вида, то очевидно, что Application только то и делает, что "вызывает реализацию через соответствующие абстракции".
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972391
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий Мух

очевидно, что Application только то и делает, что "вызывает реализацию через соответствующие абстракции".



Это самое прекрасное определение Single-Resp.
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972399
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Дмитрий Мух

очевидно, что Application только то и делает, что "вызывает реализацию через соответствующие абстракции".



Это самое прекрасное определение Single-Resp.


Ну вот и будет видно, сколько ответственности несёт в себе ваш Application. По идее, он должен запустить планировщик задач, цикл обработки событий/запрсоов, или смаршрутизировать команду на вполнение. И всё.

А у вас что там находится?
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972401
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
OK. Я зайду с другой стороны. Ты закрыл все дочерние объекты Application моками. И дальше прогнал тесты
ты такой говоришь. "Окей ребята. Ща я докажу что у Application - одна единая отвественность"

И... я дальше ожидаю словесной формулировки. Какая?


Если это некое консольное приложение, на вход которому приходят параметры командной строки, то приложение должно использовать парсер параметров командной строки, и выполнить маршрутизацию команды соответствующему обработчику.

Больше ничего ваш Application делать не должен.
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972409
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt
mayton
OK. Я зайду с другой стороны. Ты закрыл все дочерние объекты Application моками. И дальше прогнал тесты
ты такой говоришь. "Окей ребята. Ща я докажу что у Application - одна единая отвественность"

И... я дальше ожидаю словесной формулировки. Какая?


Если это некое консольное приложение, на вход которому приходят параметры командной строки, то приложение должно использовать парсер параметров командной строки, и выполнить маршрутизацию команды соответствующему обработчику.

Больше ничего ваш Application делать не должен.

Воооот. Вот поэтому я это и называю фи-ло-со-фи-я. Мдя.
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972418
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Воооот. Вот поэтому я это и называю фи-ло-со-фи-я. Мдя.


Какая ещё философия?
Если я книгу по высшей математике могу применить, как подпорку для двери, стоит ли писать об этом в назначении книги? Ещё могу книги использовать как подставку для стола, и т.д.

Философия? Нет.
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972421
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хвост.

Ты знаешь, когда Иогана Баха спросили как это он так ловко и хорошо играет на органе - он ответил
- Ничего сложного! Я просто своевременно нажимаю соотвестсвующие клавиши.
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972425
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
соотвестсвующие
"Вовремя нажимал нужные"
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972430
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Хвост.

Ты знаешь, когда Иогана Баха спросили как это он так ловко и хорошо играет на органе - он ответил
- Ничего сложного! Я просто своевременно нажимаю соотвестсвующие клавиши.


Красивая аналогия. Но я предлагаю от аналогии перейти к делу :)

Каков итог-то? В топку эти ваши принципы и методологии разработки, пилим как придётся, основываясь на субъективном понимании прекрсного по единственному рабочему принципу "я художник -- я так вижу!"? :)

Или проблемы в понимании вызывает только один единственный принцип SoR из солид?
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972433
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
Мое имхо что прогер всегда был художником)))
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972434
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt
mayton
Хвост.

Ты знаешь, когда Иогана Баха спросили как это он так ловко и хорошо играет на органе - он ответил
- Ничего сложного! Я просто своевременно нажимаю соотвестсвующие клавиши.


Красивая аналогия. Но я предлагаю от аналогии перейти к делу :)

Каков итог-то? В топку эти ваши принципы и методологии разработки, пилим как придётся, основываясь на субъективном понимании прекрсного по единственному рабочему принципу "я художник -- я так вижу!"? :)

Или проблемы в понимании вызывает только один единственный принцип SoR из солид?

Видишь ли в чем дело тут.... Модульный тест просто показывает наличие какого-то то свойства у модуля.

Мне кажется что НЕДОСТАТОЧНО будет показать просто тесты.

Тут нужно наверное зайти со стороны базового интерфейса например. А тогда зачем тесты?
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972436
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Давайте вот посмотрим на этот интерфейс.

Код: java
1.
2.
3.
4.
5.
interface IConverter {

 @NotNull Object from(@NotNull Object object);

}



Он - реализует SingleResp?
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972446
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Он - реализует SingleResp?

у него нет реализации, только контракт. его имплементация может как соблюдать так и нарушать

хотя с другой стороны, наличие кучи методов с интересными названиями может уже и в интерфейсе намекать о нарушении
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972448
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
был
На самом деле - нет, не был программист художником .
Было время, когда можно было долго пилить сложный проект в одиночку или небольшой слаженной группой.
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972454
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
PetroNotC Sharp
был
На самом деле - нет, не был программист художником .
Было время, когда можно было долго пилить сложный проект в одиночку или небольшой слаженной группой.

Ты написал "нет", но не обосновал.
А счас пишут проекты большой группой?
...
Рейтинг: 0 / 0
Удаление записей соответствующих условию из БД в Hibernate
    #39972456
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Тестируют фнкционал. А интерфейс - контракт. Или Намерения.
...
Рейтинг: 0 / 0
25 сообщений из 168, страница 4 из 7
Форумы / Java [игнор отключен] [закрыт для гостей] / Удаление записей соответствующих условию из БД в Hibernate
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]