У меня есть компонент React, который генерирует кнопку, содержимое которой содержит <span>
элемент, подобный этому:
function Click(props) {
return (
<button disable={props.disable}>
<span>Click me</span>
</button>
);
}
Я хочу протестировать логику этого компонента с использованием react-testing-library
и mocha
+ chai
.
Проблема, с которой я столкнулся на данный момент, заключается в том, что селектор getByText("Click me")
возвращает узел <span>
DOM, но для тестов мне нужно проверить атрибут disable
узла <button>
. Как лучше всего справляться с такими тестовыми примерами? Я вижу несколько решений, но все они звучат немного не так:
- Используйте
data-test-id
для<button>
элемента - Выберите одного из предков компонента
<Click />
, а затем нажмите кнопкуwithin(...)
в этой области - Щелкните выбранный элемент с помощью
fireEvent
и убедитесь, что ничего не произошло.
Вы можете предложить лучший подход?