Тестировал ли публичные методы класса

«Тестировал ли публичные методы класса» — вопрос из категории Тестирование, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, тестировал. Для этого использовал Jest или другие фреймворки. Основной фокус — на проверку ожидаемого поведения методов, включая edge cases. Пример:

class Calculator {
  add(a, b) {
    return a + b;
  }
}

// Тест
describe('Calculator', () => {
  it('should add two numbers correctly', () => {
    const calc = new Calculator();
    expect(calc.add(2, 3)).toBe(5);
    expect(calc.add(-1, 1)).toBe(0);
    expect(calc.add(0, 0)).toBe(0);
  });
});

Ключевые моменты:

  • Тестирую только публичный API, не приватные методы
  • Проверяю валидные и невалидные входные данные
  • Учитываю возвращаемые значения и side effects
  • Использую моки для зависимостей, если они есть