酶无法找到反应子组件

时间:2017-11-16 09:58:46

标签: reactjs jestjs enzyme

我有一个名为<DateRange />的React组件,它基本上呈现了两个<DateTime />组件。以下是DateRange类中的相关代码:

return (
        <div className="dateRange">
            <DateTime name={sname} className='date-time-picker'/>
            <DateTime name={ename} className='date-time-picker'/>
        </div>
    )

我有另一个名为<Form />的反应组件,它在props中接收一个对象,告诉它要呈现哪些组件以及如何呈现。呈现<DateRange />组件的代码部分是:

else if (ip.type.name == 'DateRange')
    return (
        <div key={i} className="inlineCont">
            <label {...ip.labelProps}><span>{ip.label}</span></label>
            <ip.type onChange={this.handleInputChange} validate={this.updateState} 
                disabled={this.state.submitting} values={this.state.inputs} 
                def={ip.def}/>
        </div>);

我正在使用Jest和Ezyme来编写单元测试。但是我无法访问Enzyme中的<DateTime />组件。

这就是我的所作所为:

const inputs = [{ *blabla* }];
var wrapper = mount(<Form inputs={inputs} className="frame1-body" />);
console.log("----> DateTime found: "+wrapper.find("DateTime").length);

最后一行给出0.我在不同的页面中显示了确切的代码,并正确地呈现了日期输入。我想,我不能让Enzyme 指向

如何访问<DateTime />组件呈现的<DateRange />组件,这些组件由我的主<Form />包装器呈现?

0 个答案:

没有答案