Знущання над статичними методами Починаючи з версії 3.4. 0 Mockito надав можливість імітувати виклики статичних методів (AKA статичне глузування). Як ви бачите, API для статичних макетів дещо відрізняється від того, що використовується для створення макетів екземплярів.
Якщо статичні методи є специфічними для певного набору тестів, створити окремий клас для кожного набору тестів і перемістити статичні методи в цей клас. Замініть виклики статичних методів у ваших тестових прикладах на нові методи класу, щоб зробити ваші тестові приклади більш читабельними та легшими для розуміння.
Процедура моделювання статичного методу така: Використовуйте метод mockStatic() класу Mockito: mockStatic(SaleLineParserStatic. клас)
Знову. Потім я створю новий екземпляр особи чоловічої статі, передаючи новий екземпляр поштової системи для аргументу. І тоді я збираюся назвати ці 11 чоловічих методів за допомогою ABD.
Статичні методи погані для тестування. Оскільки статичні методи належать до класу, а не до конкретного екземпляра, знущання над ними стає складним і небезпечним. Перевизначити статичний метод не так просто для деяких мов.
Висміювання статичних методів, а також приватних методів можливе за допомогою бібліотеки під назвою PowerMock, але володарі Java назавжди уникатимуть вас за його використання. Єдина причина, чому PowerMock працює, полягає в тому, що він дає вам можливість імітувати статичні та приватні методи, маніпулюючи базовим байт-кодом.