Ответ
Нет, приватные методы не стоит тестировать напрямую. Они являются внутренней реализацией класса и могут меняться без изменения публичного API.
Тестировать нужно только публичные методы, которые используют приватные. Если приватный метод сложный и требует отдельного тестирования — возможно, его стоит вынести в отдельный утилитарный класс.
class MyClass {
publicMethod() {
return this._privateHelper() * 2;
}
_privateHelper() {
// сложная логика
}
}
// Тестируем publicMethod, а не _privateHelper
test('publicMethod works', () => {
const instance = new MyClass();
expect(instance.publicMethod()).toBe(42);
});