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 № 1Moż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.