chai 未检测到 ReactTestUtils findRenderedComponentWithType 抛出错误?

ReactTestUtils findRenderedComponentWithType throwing error not detecting by chai?

我正在使用 findRenderedComponentWithType 来确保有错误,我正在使用 chai 的 assert.throws,但它不起作用。


首先:

TestUtils.findRenderedComponentWithType 文档:

expects there to be one result and returns that one result, or throws exception if there is any other number of matches besides one.


当我使用该函数时,我收到一个错误(如预期且正确)。 但是我似乎无法用 chai 正确地断言它: 我试过了assert.throws(TestUtils.findRenderedComponentWithType(element, component), /(Error)/)。但它说测试失败,即使我收到错误消息:

 Error: Did not find exactly one match for componentType:function (props, context, updater) {
 [...]
 }

检查 throws 的签名,它需要一个函数,而不是 error/object(这是 findRenderedComponentWithType 的结果)。 http://chaijs.com/api/assert/#method_throws

所以你会想做类似

的事情
cons fn = () => TestUtils.findRenderedComponentWithType(element, component)
assert.throws(fn)