我正在尝试测试 vue 组件。
我有一个使用vuex
. 我的状态存储在store.js
其中使用localStorage
. 但是,当我运行时,npm test
我收到错误消息:
WEBPACK 9416ms 编译成功
摩卡测试...
RUNTIME EXCEPTION 加载测试时发生异常
ReferenceError: localStorage 未定义
我用于测试的工具: @vue/test-utils、expect、jsdom、jsdom-global、mocha、mocha-webpack
我如何运行测试:
"test": "mocha-webpack --webpack-config node_modules/laravel-mix/setup/webpack.config.js --require tests/JavaScript/setup.js tests/JavaScript/**/*.spec.js"
样本测试order.spec.js
:
require('../../resources/assets/js/store/store');
require('../../resources/assets/js/app');
import { mount } from '@vue/test-utils';
import Order from '../../resources/assets/js/views/order/List.vue';
import expect from 'expect';
describe('Order', ()=>{
it('has alert hidden by default', () => {
let wrapper = mount(Order);
expect(wrapper.vm.alert).toBe(false);
})
})
在setup.js
文件中,我正在像这样加载 jsdom:
require('jsdom-global')();
我该如何解决?