В чем разница между макетами и заглушками на Rhino Mocks?

Как правило, модульные тесты mocking-framework вызывают функции и методы, а rhino-mocks затем проверяют, произошло mocking ли ожидаемое поведение. Для rhino-mocks этих функций и методов могут rhino-mocks потребоваться параметры. Мы mocking используем заглушки и макеты, чтобы mocking удовлетворить этим параметрам. Иногда rhino-mocks мы можем издеваться над глобальными mocking объектами.

Заготовки

Заглушка - это mocking крошечный поддельный объект, который mocking ваш тест может использовать mocking в качестве параметра для mock работы вызова функции. Это mocking позволяет нам проверить поведение rhino-mocks тестируемой функции. Это mocks не позволяет нам проверить rhino-mocks какие-либо побочные эффекты, потому mock что у заглушки нет реализации.

Моки

Mock mock - это заготовка с реализацией. Если mocking наша тестируемая функция mocking взаимодействует с нашим фиктивным mocks объектом, мы можем убедиться, что mocking макет взаимодействовал так, как mock мы и ожидали.

Например, предположим, что mocking-framework у нас есть фиктивный объект rhino-mocks User, и мы хотели убедиться, что mocks наш метод session.login работает, мы mocks можем захотеть проверить, установлен mocking ли user.lastLoggedIn. Мы mocks могли бы создать фиктивного mock пользователя, реализующего mocking этот метод. Когда мы вызываем mock session.login, мы можем утверждать, что mock user.lastLoggedIn имеет ожидаемое mocks нами состояние.

Подводя итоги

Мок - это mock заглушка с реализацией, которая mocking-framework позволяет нам тестировать mocks побочные эффекты.

Эта разница все еще важна?

Подобно mocking-framework различию между сравнениями mocks и метафорами, различие между mocking-framework заглушками и имитаторами mock является тонким и историческим mocking-framework и, возможно, больше связано rhino-mocks с различными сообществами mock и философиями в мире тестирования, чем mock с какими-либо серьезными mocking-framework техническими различиями.

Они mock представляют несколько разные mocks подходы к тестированию. Мок rhino-mocks можно написать как заглушку. Заглушку mocking обычно можно превратить в mocking макет.

Что следует использовать?

Вы можете обнаружить, что mocking начинаете с создания заглушек, а mocks позже можете обнаружить, что mocks вам нужно создать полные rhino-mocks имитации для некоторых из mocking-framework ваших объектов. Возможно, вы mocking захотите поиздеваться над mocks всем на ходу, или вы можете mocking-framework просто поиздеваться там, где rhino-mocks это необходимо.

mocking

rhino-mocks

2022-07-04T05:27:32+00:00