/ / Как да тествам елемент, който е извън ензимната обвивка? - reactjs, jestjs, ензим

Как да тествам елемент, който е извън обвивката на ензимите? - реакции, ензими, ензими

Аз използвам Jest и Enzyme да правите единични тестове.

Във файла ми test.js имам

let wrapper = mount(<app />

Тестът ми натиска бутон в обвивката

wrapper.find("button").simulate("click")

и компонентът прави модал, който е извън опаковката.

Трябва да се позова на модала, за да мога да симулирам щракване върху бутон в него. Мога да получа препратка към модалния чрез document.body.children, но не мога да направя нищо с него.

Как да използвам ензим за тестване на елемент, който е извън предоставената обвивка?

Отговори:

0 за отговор № 1

Можете да тествате ButtonOnclik с едно определено състояние във вашето приложение React

Във вашия компонент

state={
data: "first State",
};

render(){
return (<div>
<button onClick={(e) => this.setState({data: "second State"})}>Test</button>

</div>
}

В теста можете да използвате Enzyme или само Jest

const wrapper = shallow(<Name Your Component/>);

it("test button", () => {
expect(wrapper.state().data).toBe("first State");
wrapper.find("button").simulate("click");
expect(wrapper.state().data).toBe("second State")
});

Надявам се да е полезно за вас :)