22 января 2014 г., 16:53 пользователь Mons Anderson <[email protected]> написал:

>
> On 22.01.2014, at 15:21, Илья Винокуров <[email protected]> wrote:
>
>
> У вас в объекте есть несколько методов, которые по идеологии юнит
> тестирования нужно/можно протестировать отдельно.
> Например:
> *new* - хорошо бы протестировать, что этот метод правильно производит
> начальную инициализацию переменных в зависимости от переданныех параметров
>
>
> на такой бред я не буду тратить время.
>

Если используется какой-то ОО-фреймворк, то все это должно уже быть в его
тестах.

Проверить поведение метода для разных OS.
>
>
> Проверить, что метод действительно вызывает другой метод prepare.
>
>
> там код линейный. как он может его не вызывать?
>

Ну а если код нелинейный? (Или мы говорим о каком-то конкретном примере,
который я пропустил?)
К слову, в подобных ситуациях может помочь модуль
Class::Mock::Generic::InterfaceTester.

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

Это весьма спорный вопрос. Тестирование по методу белого ящика никто не
отменял.

-- 
Best regards,
Ilya Chesnokov
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить