Dav*_* R. 3 tdd unit-testing vue.js jestjs vue-test-utils
使用 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
});
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚如何访问输入的“值”。
如有任何帮助,请提前表示感谢
我假设你的组件看起来像这样:
<input id="street1" type="text" v-model="street1" >
Run Code Online (Sandbox Code Playgroud)
那么你可以尝试
expect(street1.element.value).toEqual('223 Some Street Rd');
Run Code Online (Sandbox Code Playgroud)
例如
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');
});
});
Run Code Online (Sandbox Code Playgroud)