У меня есть приложение Vue, которое использует Vue Analytics, которое создает метод this.$ga.page
для отслеживания страниц. Теперь мне нужно протестировать свой компонент, используя Jest, но он говорит, что this.$ga.page
не определено. Я инициализирую Vue Analytics в main.js
.
Как включить main.js
перед компонентом в тестовом файле? Я знаю, что нам нужно добавить это в методе beforeEach
, но я точно не знаю, как это сделать.
Vue Analytics init в main.js
import VueAnalytics from 'vue-analytics'
Vue.use(VueAnalytics, {
id: 'UA-150437966-1'
})
Тест "Моя домашняя страница"
import { mount } from '@vue/test-utils'
import Homepage from '../../src/Pages/Homepage'
describe('Homepage', () => {
const wrapper = mount(Homepage)
it('has a button', () => {
expect(wrapper.contains('button')).toBe(true)
})
})
Homepage.vue
выдержка
created: function() {
//analytics
this.$ga.page({
page: "/",
title: "Home page",
location: window.location.href
});
}
};
Ошибка, которую я получаю
Homepage › encountered a declaration exception
TypeError: Cannot read property 'page' of undefined
67 | //analytics
68 |
> 69 | this.$ga.page({