Fake об'єкт
Fake об’єкт (або Stub) це об’єкт-замінник який не виконує повністю необхідної роботи, а тільки симулює її виконання.
Стаби використовуються при підході до розробки без обліку залежностей, а також в юніт тестуванні.
Наприклад, клас, який відповідає за зберігання файлу передається всередині тестової функції foo(File file) і там виконує file.save(); Можна зробити Stub клас-спадкоємець від File який замість реального зберігання буде містити лічильник виклику методу save(). Використання:
file = new FileStub()
foo(file)
assert(file.executionCount(), 1)
Тестові фреймворки зазвичай містять механізми для автоматичного створення стабів на основі реальних об’єктів, дозволяють перевизначати значення, які повертаються в залежності від переданих параметрів.
Last updated
Was this helpful?