Size: a a a

Software Design/Architecture/Zen

2021 May 11

SP

Sergey Protko in Software Design/Architecture/Zen
ну то есть условно говоря для тебя white box это когда ты моки генерируешь по описанию а black box когда фэйки руками пишешь?)
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
blackbox тестирование не исключает white-box, оно живет вместе
источник

SP

Sergey Protko in Software Design/Architecture/Zen
что если я скажу что фэйки руками где ты потом ассерты по стэйту фэйка делаешь ничем вообще не отличается от моков?
источник

SP

Sergey Protko in Software Design/Architecture/Zen
как следствие условный код

profile = new Profile(data)
repo.add(profile)


что с моками что с ручными фэйками + ассерты будут знать о реализации одинаково?
источник

R

Roman in Software Design/Architecture/Zen
Не, black box — когда ты описываешь всё, кроме того, что тестируешь
источник

SP

Sergey Protko in Software Design/Architecture/Zen
окей, то есть если я через свой mock framework описываю все методы зависимостей (что на самом деле надо делать люди просто об этом не вкурсе видимо) то у меня black box? тогда что из моего примера выглядит как white box?
источник

R

Roman in Software Design/Architecture/Zen
А зачем ассертить фейк?
источник

SP

Sergey Protko in Software Design/Architecture/Zen
а что твой тест проверяет если нет ассертов?
источник

R

Roman in Software Design/Architecture/Zen
Ассертить то, что тестируешь
источник

SP

Sergey Protko in Software Design/Architecture/Zen
ну вот и вопрос - что ты тесируешь)
источник

SP

Sergey Protko in Software Design/Architecture/Zen
вот ты привел пример. Что ты тут тестируешь?
источник

SP

Sergey Protko in Software Design/Architecture/Zen
ты ж по сути будешь ассертить стэйт твоего NewFakeRepo
источник

R

Roman in Software Design/Architecture/Zen
Что f отдаёт ожидаемые рузельтаты. Я не буду ассертить стейт репо, я буду ассертить результаты работы f на стейтом репо
источник

SP

Sergey Protko in Software Design/Architecture/Zen
а что оно возвращает?
источник

SP

Sergey Protko in Software Design/Architecture/Zen
ну то есть а как же CQS, штуки с сайд эффектами должны быть void
источник

SP

Sergey Protko in Software Design/Architecture/Zen
накой штуке которая скажем юзера регает возвращать чего-то?
источник

R

Roman in Software Design/Architecture/Zen
Тут ассертить сайдэффект в виде юзера в БД, даже если это фейк
источник

SP

Sergey Protko in Software Design/Architecture/Zen
ну то есть юнит тест с БД?
источник

SP

Sergey Protko in Software Design/Architecture/Zen
я запутался
источник

SP

Sergey Protko in Software Design/Architecture/Zen
то есть таки не нужен юнит тест тут
источник