Мои занятия -
class Course{
public getFormattedTime(){
// logic to parse time and return in appropriate format
// return string
}
}
Согласно документации jest https://jestjs.io/docs/en/ es6-class-mocks#automatic-mock, replaces all of its methods with mock functions that always return undefined
. Итак, мой вопрос: если мы изменим все возвращаемые значения метода на undefined, то что еще осталось проверить? Я не хочу проверять, сколько раз вызывается этот метод, я просто хочу проверить фактическую логику внутри метода. Я что-то пропустил здесь
1 ответ
Цель тестирования — протестировать только ту функцию, на которую вы ориентируетесь. Если функция вызывает другую, то вторая функция должна быть смоделирована. Автоматическое издевательство просто создаст поддельный класс, и каждый метод вернет значение undefined. Если вы хотите, чтобы ваши методы возвращали определенные значения для целей тестирования, вам следует взглянуть на ручное издевательство. https://jestjs.io/docs/en/es6-class- mocks#manual-mock
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript/JS) и его различных диалектах/реализациях (кроме ActionScript). Имейте в виду, что JavaScript — это НЕ то же самое, что Java! Включите все ярлыки, относящиеся к вашему вопросу; например, [node.js], [jQuery], [JSON], [ReactJS], [angular], [ember.js], [vue.js], [typescript], [svelte] и т. д.
expect(Course.getFormattedTime()).toBe(<SOME_VALUE>)
. Я не хочу изменять то, что вернет этот метод. Я хочу, чтобы он выполнял логику за меня, а затем возвращал любое конечное значение