Вопрос задан не очень верно. React из него, на текущем уровне следует выкинуть.
Далее ознакомится с пирамидой тестирования. Это уже закроет часть вопросов о том, что к какому типу тестов относится. Только после этого следует переходить к специфики реакта.
Но если ответить на вопрос, то функции с помощью jest или аналогов.
Сами компоненты React-Testing-Library + Jest
Взаимодействие компонентов либо всё теми же React-Testing-Library + Jest, либо чем-то из интеграционных: TestCafe или Cypress или аналогом
Ну и полные сценарии от открытия страницы до совершения последнего в цепочке целевого действия TestCafe или Cypress или аналогом
Рекомендуют покрытие Unit тестов не менее 90%, причем после обработки через stryker mutator
Интеграционные и e2e по критическим сценариям
Как-то так