#vue.js #unit-testing #jestjs #nuxt.js #vue-test-utils
#vue.js #модульное тестирование #jestjs #nuxt.js #vue-test-utils
Вопрос:
У меня есть код внутри метода проверки, если условие true, оно возвращает true, иначе false. Я хочу протестировать этот код. Есть ли какой-нибудь способ это сделать.
Комментарии:
1.
validate
на самом деле не предназначен для тестов Jest,validate
предназначен для проверки во время выполнения. Что вы пробовали до сих пор?2. @kissu Я был бы очень признателен, если бы вы поняли необходимость вопроса, а не говорили, что имеется в виду . В любом случае, я рад, что вы заинтересовались моим вопросом.
Ответ №1:
Обычно метод asyncData и метод validate являются частью nuxt, а не vuejs, и обычно их нельзя протестировать, но мы хотим протестировать его, если это возможно.
Зачем проверять validate: поскольку мы работаем над длинным проектом, мы хотим проверить его, работает ли каждое условие так, как ожидалось, чьи-либо изменения не помешали работе этого метода, и поэтому я нашел решение вызвать этот метод вручную и передать ему соответствующие параметры.
// example.vue
validate({ params, query }) {
if (params.includes("abc" amp;amp; query["something"])) {
return true;
} else {
return false;
}
}
// example.test.js
import index from "example.vue"
describe("test", () => {
it("Check validate method", async () => {
// Check when query present
const params = {
abc: "abc"
};
const query = {
something: "abc"
};
const validate = Index.validate({ params, $constants, query });
expect(validate).toBe(true); // or false
});
});