First-Class Tests

Обсуждаем, как правильно строить приложения
Ответить
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

First-Class Tests

Сообщение samdark »

http://blog.cleancoder.com/uncle-bob/20 ... tions.html

Как вам определение юнит-тестов Роберта Мартина?
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: First-Class Tests

Сообщение ElisDN »

То, что это тесты, написанные программистом для проверки правильности того, что код ведёт себя именно так, как от него ожидается? Да, так и есть. К этому и призываю в примерах здесь и когда здесь говорю "тестируйте суть".
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: First-Class Tests

Сообщение samdark »

Не, я про то, что он делит юнит на микро- и не микро-. Причём микро- — это то, что обычно называют "нормальным" юнитом (тестирует один класс). И к микро- отношение в статье явно негативное.
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: First-Class Tests

Сообщение ElisDN »

samdark писал(а): 2017.05.12, 12:51 Не, я про то, что он делит юнит на микро- и не микро-. Причём микро- — это то, что обычно называют "нормальным" юнитом (тестирует один класс). И к микро- отношение в статье явно негативное.
Нет. Это про тестирование одной функции вроде StringHelper::truncate, а не про класс/объект:
Micro-test: ... The purpose is to test a single function, or small grouping of functions.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: First-Class Tests

Сообщение samdark »

Ещё как про класс. Ссылка в термине вот на эту статью: http://anarchycreek.com/2009/05/20/they ... icrotests/
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: First-Class Tests

Сообщение samdark »

It takes complete control of the object-under-test and is therefore self-contained, i.e. running with no dependencies on anything other than the testing code and its dependency graph.
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: First-Class Tests

Сообщение ElisDN »

It invokes only a tiny portion of the code, most usually a single branch of a single function.
Видимо здесь уже про одну функцию/метод.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: First-Class Tests

Сообщение samdark »

Да, не очень ясен момент. Ещё меня немного зацепило отношение к мокам. Я как раз всегда писал dummy-объекты руками, но последнее время начал моки тоже использовать.
sda
Сообщения: 334
Зарегистрирован: 2013.12.19, 09:29

Re: First-Class Tests

Сообщение sda »

Я верно понял мысль, что не нужно тестировать внутренности, а нужно тестировать сущность так как она будет использоваться в продакшн коде? Например писать тесты на корень агрегата и не писать тесты на дочерние сущности внутри него? То есть тестировать агрегат как одно неделимое целое, а не как набор отдельных классов, которые по одиночке не имеют смысла в продакш коде. Верно?
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: First-Class Tests

Сообщение samdark »

Насколько я понимаю, да.
Ответить