Reactjs 使用酶,我如何测试儿童数量的变化?

Reactjs 使用酶,我如何测试儿童数量的变化?,reactjs,enzyme,Reactjs,Enzyme,我有一个组件,我想在添加/删除/更改其组件时使用酶来测试其行为。例如,改变 到 我正在使用一个操纵DOM的第三方库,因此我需要跟踪子库以保持React和库的同步 我多次尝试调用mount,尽管这两个mount调用创建了两个不同的实例。比如说, 让构造函数调用=0; 让Parent=class扩展React.Component{ 建造师(道具){ 超级(道具); 构造函数调用+=1; } render(){return;} } mount(); mount(); //现在,construc

我有一个
组件,我想在添加/删除/更改其
组件时使用酶来测试其行为。例如,改变



我正在使用一个操纵DOM的第三方库,因此我需要跟踪子库以保持React和库的同步

我多次尝试调用
mount
,尽管这两个
mount
调用创建了两个不同的实例。比如说,

让构造函数调用=0;
让Parent=class扩展React.Component{
建造师(道具){
超级(道具);
构造函数调用+=1;
}
render(){return;}
}
mount();
mount();
//现在,constructorCalls=2
两次调用
mount
将创建两个不同的父级和两个不同的构造函数调用,因此,如果呈现的组件没有更改,它的行为不会像React那样,也不会执行任何操作


那么,如何使用酶“重新安装”不同子代的组件呢?

我仍然找不到酶的答案,所以这里有一个酶解决方案

它不像Ezyme那样具有这种功能,所以我通过在包装器组件中添加衬里来实现它,并通过向包装器传递道具来更改子对象的数量。(注意我使用的是ES6类)

const WrapperComponent=类扩展React.Component{
静态defaultProps={
n:1
}
render(){
如果(本道具n>1){
返回(
);
}
返回(
);
}
}
const wrapper=mount();
// ... 用一个子项测试父项的状态
setProps({n:2});
// ... 测试有两个孩子的父母的状态

我仍然找不到关于酶的答案,所以这里有一个酶溶液

它不像Ezyme那样具有这种功能,所以我通过在包装器组件中添加衬里来实现它,并通过向包装器传递道具来更改子对象的数量。(注意我使用的是ES6类)

const WrapperComponent=类扩展React.Component{
静态defaultProps={
n:1
}
render(){
如果(本道具n>1){
返回(
);
}
返回(
);
}
}
const wrapper=mount();
// ... 用一个子项测试父项的状态
setProps({n:2});
// ... 测试有两个孩子的父母的状态

当事件被触发(例如onClick)时,您的子组件不是在更改吗?当事件被触发(例如onClick)时,您的子组件不是在更改吗。