document.execCommand不是vue测试工具中的函数

时间:2018-10-24 17:13:08

标签: javascript vue.js vue-test-utils

使用带有Jest的vue-test-utils进行vue测试,在执行复制命令时出现错误

document.execCommand不是函数。 我该如何解决?

这是组件源代码段。

   copyToClipboard(){
     document.execCommand('copy');
    }

我在这里写了这样的测试;

import Vue from 'vue';
import Vuex from 'vuex';
import {shallowMount} from '@vue/test-utils'

describe('*****.vue', () => {
let wrapper;
beforeAll(()=>{
wrapper = shallowMount(***, {attachToDocument:true, store, localVue});
})

it('should render correct content', () => {
wrapper.vm.copyToClipboard();
);
}

1 个答案:

答案 0 :(得分:1)

想必您正在使用jsdom进行测试?在这种情况下,execCommandnot supported

最好的doesn't support环境(例如无头Chrome),但使用Puppeteer可能会取得一些成功