Звучит так, будто вы хотите проверить, что щелчок вызывает некоторые изменения в компоненте, а не просто проверить, что метод вызван.
Вы можете визуализировать компонент A
, вызвать событие щелчка,и сделать утверждения, основанные на том, как это вызывает изменения в выходных данных компонента.Вот как может выглядеть тест, используя react-testing-library
:
test('does a thing when clicked', () => {
const { getByText } = render(<A />);
// This assumes you have a button inside component B
// that has `foo` as the onClick:
fireEvent.click(getByText('Click me'));
// Make assertions here based on how the click handler
// causes the component's output to change, generally based
// on some text changing
expect(getByText('You clicked the button')).toBeInTheDocument();
})