Vue路由单元测试-?

时间:2018-09-19 08:48:50

标签: javascript unit-testing vue.js mocha chai

我正在尝试对路径路径进行单元测试。

router / index.js (index.js是路由器文件夹中具有路径的文件)

import Vue from 'vue'
import Router from 'vue-router'
import Login00Z from '@/components/Login00Z'


Vue.use(Router)

export default new Router({
    mode:'history',
    routes: [
        { path: '/', name: 'default', component: Login00Z },
        { path: '/', redirect: {name: 'login00Z'} },
        { path: '/login00Z', name: 'login00Z', component: Login00Z }
    ]
})

specs / app.spec.js (app.spec.js是specs文件夹中包含单元测试的文件)

import sinon from 'sinon'
import { expect } from 'chai'
import Vuetify from 'vuetify'
import { mount, shallowMount, createLocalVue } from '@vue/test-utils'
import VueRouter from 'vue-router'
import App from '@/App.vue'
import Login00Z from '@/components/Login00Z.vue'

describe('App.vue', () => {

    const localVue = createLocalVue()
    localVue.use(VueRouter)
    const router = new VueRouter()
    const wrapper = shallowMount(App, {
        Login00Z,
        localVue,
        router,
        stubs: ['v-navigation-drawer', 'v-list', 'v-list-tile',
         'v-list-tile-action', 'v-icon', 'v-list-tile-content',
         'v-list-tile-title', 'v-toolbar', 'v-toolbar-side-icon',
         'v-icon', 'v-toolbar-title', 'v-spacer', 'router-link',
         'router-view', 'v-app', 'v-btn','v-content',
         'v-slide-y-transition','v-layout', 'v-footer']
    })

    it('app loads with correct route', () => {
        expect(wrapper.vm.$route.path).to.equal('/')
    })

});

好的,让我解释一下:

您可以看到进行了一项测试。路径应该相等 到(’/’),这确实有效,测试通过了。当我编写完全相同的代码时 并且仅将(’/’)更改为(’/ login00Z’)测试失败。现在我知道 无法正常工作,我尝试了许多不同的方法,但仍然无法确定 了解如何进行这项工作。

有没有人可以帮助我测试“ / login00Z”路径?我是 如果我知道如何做到这一点,就可以轻松地继续我的工作。

0 个答案:

没有答案