使用 Vue test-utils,我需要测试通过 prop 填充的特定输入元素的值。我已经想出如何使用它的 id 找到元素:
it("Address should render Street 1", () => {
const street1 = wrapper.find('#street1') // this works
expect(street1).toEqual('223 Some Street Rd') // nope
expect(street1.text()).toEqual('223 Some Street Rd') // seemed good at the time
expect(street1.value()).toEqual('223 Some Street Rd') // grasping at straws - no love
});
但我一直无法弄清楚如何访问输入的“值”。
提前感谢任何帮助
最佳答案
我假设您的组件看起来像这样:
<input id="street1" type="text" v-model="street1" >
那你可以试试
expect(street1.element.value).toEqual('223 Some Street Rd');
例如
import { mount } from "@vue/test-utils";
import Input from "./Input";
describe("Input", () => {
const mountInput = (propsData = {}) => {
return mount(Input, {
propsData
});
};
it("Address should render Street 1", () => {
const wrapper = mountInput();
const street1 = wrapper.find('#street1')
expect(street1.element.value).toEqual('223 Some Street Rd');
});
});
关于unit-testing - 使用 Vue test-utils 和 jest 测试特定输入元素的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63256050/