我正在使用 Vue3 + Vite + Cypress。使用 Vue3 script setup
SFC 语法。我有一个组件:
<template>
<div>
<button data-cy="testBtn" @click="btnClick()">
Click
</button>
</div>
</template>
<script setup lang="ts">
function btnClick():void {
console.log('clicked');
}
</script>
我如何进行监视,btnClick
以便我可以断言它已被调用cy.get('[data-cy="testBtn"]').click();
?
我努力了:
describe('Test', () => {
it.only(`Test`, () => {
mount(TestComponent, {
props: {
device: TestComponent
}
});
cy.vue().then((wrapper) => {
const test = cy.spy(wrapper.vm, 'btnClick');
cy.get('[data-cy="testBtn"]').click();
expect(test).to.be.called;
});
});
});
但我得到一个错误Attempted to wrap undefined property btnClick as function