Так, ми все ще називаємо це тестовою одиницею, якщо функції викликають інші функції.
Тестові одиниці повинні перевірити поведінку класу, а не приватну реалізацію. Як запропоновано тестуванням Google щодо статті про туалет .
Якщо ви дотримуєтесь правил чистого коду, то ваші функції не повинні перевищувати 4 рядки коду. Це унеможливлює тестування іншої приватної функції за допомогою ваших тестових одиниць.
Чому б вам не перевірити окремо більшість приватних функцій окремо? Тому що рефакторинг змусить вас постійно оновлювати всі тести для впровадження. Це стане неприємним, коли у вас їх буде багато, тоді як поведінка громадськості не повинна змінюватися під час рефакторингу, і, отже, тест не потребує оновлення. Ви повинні мати можливість протестувати з приватними особами з їх батьків. Іноді, можливо, варто тестувати складних приватних осіб, але цікаво, чи вони повинні бути окремим класом самостійно?
Інтеграційний тест :
Тепер, якщо функція є частиною іншого класу, вона відрізняється. Тоді ми би назвали це тестування компонентів або тестування інтеграції. Ви інтегруєте кілька класів і проводите тест проти них. Функція B залежатиме від функції C. Щоб мати змогу тестувати функцію B, ви можете використовувати введення залежності, щоб виділити функцію, яку ви протестуєте, тепер це буде тест одиниці знову.