【发布时间】:2014-12-28 11:51:51
【问题描述】:
我在使用 React 对任何东西进行单元测试时遇到了非常困难的事情。 TestUtils 上的文档很少,没有示例。谷歌似乎只给了我几个结果。我正在使用 Jasmine,但这并不是真正让我感到悲伤的部分。
这是我尝试过的最简单的测试:
var BigButton = React.createClass({
render: function () {
return (
<button className="big-submit" data-color={this.props.color} onClick={this.props.action}>{this.props.text}</button>
);
},
foo: function () {},
bar: function () {
this.foo();
}
});
我有一个测试
describe('BigButton', function () {
describe('render', function () {
it('creates a button', function () {
var button = <BigButton />;
TestUtils.renderIntoDocument(button);
debugger;
});
});
});
我的问题是如何从外部访问 React 类中有意义的内容?我如何检查渲染是否返回按钮 HTML 元素?我知道如何使用测试间谍,但我什至如何找到方法foo 进行间谍活动以及如何调用bar?一切似乎都以某种完全无法测试的方式包装起来。
【问题讨论】:
标签: javascript unit-testing jasmine reactjs