Если вы хотите протестировать функцию, которая не зависит от компонента, вы можете использовать модификатор static
:
import React from 'react'
class Dashboard extends React.Component {
constructor(props) {
super(props)
}
static sum(one, two) {
return one + two
}
render() {
return(
<div>
<h1>{Dashboard.sum(12, 14)}</h1>
</div>
)
}
}
export default Dashboard
it('check component', () => {
const div = document.createElement('div');
ReactDOM.render(<Dashboard />, div);
});
it('check sum function', () => {
expect(Dashboard.sum(12, 12)).toEqual(24);
});
В большинстве случаев нет необходимости отдельно тестировать методы реагирующих компонентов.
Еще один способ решения вашей проблемы - переместить сумму в отдельный модуль.Затем вы можете добавить модульные тесты для этого модуля.