申し訳ありませんが、ボタンをクリックしてReact Modalをテストしようとすると、最も厳しい時間がかかりました。モーダルはできるだけシンプルであり、私は考えることができる、または見つけることができるすべてを試しましたが、私はまだその子を照会できません。React Modalコンポーネントのテスト
モーダルコンポーネント:
var React = require('react');
var Modal = require('react-bootstrap').Modal;
var Button = require('react-bootstrap').Button;
var MyModal = React.createClass({
...
render: function() {
return (
<Modal className="my-modal-class" show={this.props.show}>
<Modal.Header>
<Modal.Title>My Modal</Modal.Title>
</Modal.Header>
<Modal.Body>
Hello, World!
</Modal.Body>
<Modal.Footer>
<Button onClick={this.props.onHide}>Close</Button>
</Modal.Footer>
</Modal>
);
}
});
私の目標は、それがクリックされたときに閉じるボタンがonHide()
機能を発射するかどうかをテストすることです。
私のテストファイル:
describe('MyModal.jsx', function() {
it('tests the Close Button', function() {
var spy = sinon.spy();
var MyModalComponent = TestUtils.renderIntoDocument(
<MyModal show onHide={spy}/>
);
// This passes
TestUtils.findRenderedComponentWithType(MyModalComponent, MyModal);
// This fails
var CloseButton = TestUtils.findRenderedDOMComponentWithTag(MyModalComponent, 'button');
// Never gets here
TestUtils.Simulate.click(CloseButton);
expect(spy.calledOnce).to.be.true;
});
});
どんなに私がしようとするもの、私は閉じるボタンを見つけるように見えることはできません。
あなたは冗談を使用していますか?私は冗談を一度も使用していませんが、私はそれが依存するコンポーネントを自動で模倣していると思います。それは問題になることができますか? –
@AbhishekJain私はMochaを使用しています – user1778856
は '