我有一个变量,它根据条件为true或false动态分配一个React组件。
if(isValid) {icon = <ErrorIcon className: "error"/>}
else {icon = <SuccessIcon className: "success"/>
我如何测试图标的预期值是单元测试中的一个组件还是其他组件?
不确定此API的可靠性,但每个反应组件实例都具有type
属性,因此您可以根据组件定义进行检查:
const isErrorIcon = icon.type === ErrorIcon
所以在你的情况下:
expect(icon.type).to.equal(ErrorIcon)
if (icon.type === SuccessIcon) {
} else if (icon.type === ErrorIcon) {
}
应该做的伎俩。