在React中使用Jest测试函数的返回值

时间:2017-10-12 14:04:34

标签: javascript reactjs testing jest

如何在此React代码中测试“doSomethingFancy”函数中的返回值?我试图找到一个超级简单的例子,找不到任何东西。所以我想编写一个测试来检查返回的数字2。我知道它并没有真正回归到任何东西,因为我写这个作为一个例子,所以我可以学习如何为我的React应用程序编写测试。任何帮助将不胜感激。

import React from 'react';

class FancyStuff extends React.Component {
    render() {
        return <div>
            <h1>
                Hello, {this.props.name}
            </h1>

            <button onClick={this.doSomethingFancy}>
                Add 1 + 1!
            </button>
        </div>;
    }

    doSomethingFancy(e) {
        e.preventDefault();
        let value = 1 + 1;
        return value;
    }
};

export default FancyStuff;

1 个答案:

答案 0 :(得分:2)

如果您需要在测试中访问类方法,它将在返回包装器的实例方法时作为属性提供。

const wrapper = shallow(<MyComponent />);
expect(wrapper.instance().doSomethingFancy()).toEqual(true);