У меня есть мой сайт в VueJs и API в Go. Я хотел бы проверить методы, которые я написал, например зарегистрироваться. Эти методы имеют вызовы API, используя Axios. Я нашел тонны учебников, объясняющих, как подделать API, но в моем случае я просто хотел бы использовать настоящий API.
На данный момент это мой тестовый файл:
import Vue from 'vue'
import { mount } from '@vue/test-utils'
import Register from './Register.vue'
import Vuetify from 'vuetify'
import ElementUI from "element-ui"
import localApi from "@Util/localApi"
Vue.use(Vuetify)
Vue.use(ElementUI)
Vue.use(localApi)
describe('Register', () => {
const wrapper = mount(Register, {
attachToDocument: true
})
it('RegisterForm', () => {
expect(wrapper.vm.registerForm.cp).toBe("")
wrapper.find('#inputCP').setValue('login')
expect(wrapper.vm.registerForm.cp).toBe("login")
expect(wrapper.vm.registerForm.password).toBe("")
wrapper.find('#inputPassword').setValue('password')
expect(wrapper.vm.registerForm.password).toBe("password")
expect(wrapper.vm.registerForm.confirm).toBe("")
wrapper.find('#inputConfirm').setValue('confirm')
expect(wrapper.vm.registerForm.confirm).toBe("confirm")
expect(wrapper.vm.registerForm.nom).toBe("")
wrapper.find('#inputNom').setValue('nom')
expect(wrapper.vm.registerForm.nom).toBe("nom")
expect(wrapper.vm.registerForm.prenom).toBe("")
wrapper.find('#inputPrenom').setValue('prenom')
expect(wrapper.vm.registerForm.prenom).toBe("prenom")
wrapper.find('#inputConfirm').setValue('password')
wrapper.find('#buttonRegister').trigger('click')
expect(wrapper.vm.registerForm.password).toBe("passwordd") //to check if the value changed, and if yes, what is the new value in the terminal
})
})
метод, который я называю
onSubmit() {
this.$refs["registerForm"].validate(valid => {
if (valid) {
this.registerForm.password = "passwordd"
localApi
.put("/register", this.registerForm)
.then(response => {
this.registerForm.password = response.response.data
})
.catch(err => {
this.registerForm.password = err.response.data
});
}
});
}
И, в случае, это мой файл localApi:
import axios from 'axios'
import constants from './constants'
const localApi = axios.create({
baseURL: constants.API_BASE_URL,
withCredentials: true
});
export default localApi;
Тесты прошли без ошибок, но (это некрасиво, я согласен) Я изменил тесты, чтобы видеть, куда идет код, и он не входит в then () или catch () ...
Мой API запущен, и я ничего не получил в логах. Может быть, я забыл импортировать вещи в моем тестовом файле? Я не знаю ...