javascript Jest:wrapper.find().simulate('keypress ',{key:'Enter',键码:13})不起作用

aurhwmvo  于 2023-08-02  发布在  Java
关注(0)|答案(2)|浏览(76)

从这个问题继续
vue-btn doesn't submit on enter key
我有这个登录页面,可以登录使用'回车'在键盘上我想做单元测试时,模拟键盘上的回车键,它可以自动登录
这是我的测试代码

describe('Login.vue', () => {
    const vuetify = new Vuetify()
    const store = new Vuex.Store({
        actions: {
            login: jest.fn()
        }
    })
    const wrapper = mount(Login, { stubs: ['router-link', 'router-view'], store, vuetify })

    it('login using enter key on keyboard', async () => {
        wrapper.setData({ email: 'user@example.com' })
        wrapper.setData({ password: 'Passw0rd' })

        await wrapper.vm.$nextTick()
        wrapper.find('[data-cy="input-password"]').simulate('keypress', {key: 'Enter', keycode: 13})
    })
})

字符串
我已经使用Cypress进行了集成测试,但是我想在将其提交到存储库之前先进行单元测试。
非常感谢

ogq8wdun

ogq8wdun1#

这就是我的工作:

await wrapper.find('#myFieldID').vm.$emit('keypress', {type: 'enter'});

字符串
因此,在这种情况下,该行应该是:

wrapper.find('[data-cy="input-password"]').vm.$emit('keypress', {type: 'Enter'})

5lwkijsr

5lwkijsr2#

wrapper.find('[data-cy="input-password"]').trigger('keyup.enter')

字符串

相关问题