если у меня есть дочерний компонент, который имеет событие onclick, которое, в свою очередь, вызывает родительский обработчик событий, что лучше всего подходит для тестирования? В моем случае текстовое значение кнопки изменяется, когда пользователь нажимает на нее - это обрабатывается в this.props.myEvent.реагировать jest unit тестирование дочерних компонентов с событиями
Моего блок тест работает при тестировании начального значения
expect(button.getDOMNode().textContent).toEqual('startValue');
, но как я создать модульный тест для того, когда пользователь нажимает на кнопку, и значение кнопки обновляются до определенного значения?
В моем случае у меня есть кнопка:
var React = require('react');
module.exports = React.createClass({
myEvent: function(a,b){
this.props.myEvent(a, b);
},
render: function() {
return (
<button name="myButton" id={this.props.id} onClick={this.myEvent.bind(this.props.a,this.props.b)}>{this.props.value}</button>
)
}
});
благодаря
так в моем случае, значение кнопки изменяется после щелчка пользователя. В моем модульном тесте я проверяю начальное значение текста кнопок, используя «expect (button.getDOMNode(). TextContent) .toEqual ('initialValue'); ' и тогда я сделаю так, как вы предложили (.Simulate.Click()), однако, когда я проверяю значение текста кнопок после имитированного щелчка, значение остается неизменным. – pgfitzpatrick