/ Symulacja interakcji użytkownika z komponentem React w teście Jest - Reaguje, Jest

Symulowanie interakcji użytkownika z komponentem React w teście Jest - reactjs, jest

Mam przycisk React, który chcę przetestować za pomocą Jest.

Chcę przetestować interakcje użytkownika z komponentem.

Jak mogę przetestować działanie przycisku, gdy użytkownik kliknie przycisk w teście Jest.

Mój test wygląda następująco:

describe("My button component", () => {
it("does something when it is clicked", () => {
const comp = (<MyButton onClick={onClick}></MyButton>);
// ... how can I simulate a user click and assert the change in the DOM?
});
});

function onClick() {}

Odpowiedzi:

1 dla odpowiedzi № 1

Możesz wyśmiewać funkcję za pomocą jest.fn()

describe("My button component", () => {
it("does something when it is clicked", () => {
const mockOnClick = jest.fn()
const comp = (<MyButton onClick={mockOnClick}></MyButton>)

component.find(MyButton).simulate("click")
expect(mockOnClick.mock.calls.length).toBe(1)

})
})

Możesz postępować zgodnie z dalszymi instrukcjami tutaj.