我想单独/独立使用/运行jest-dom匹配器(不是在测试中,而是在网页中),如下所示:
import matchers from '@testing-library/jest-dom/matchers'
window.matchers = matches
这就是Jest-dom GitHub所宣称的:
其目的是使它可以独立于这些其他库使用,同时也更清楚地表明这些其他库独立于jest,并且也可以与其他测试运行程序一起使用。
Btw, this is why I want to do it.
然后我运行webpack
命令并将自动生成的JS文件(位于dist
)加载到页面中。
最后,在页面中,我运行以下代码:
console.log(matchers.toBeDisabled(someElem))
它工作得很好。但是,当我运行一个接收到参数的匹配器时,它就失败了。例如:
console.log(matchers.toHaveAccessibleName(someElem, "name 1"))
它将失败,并显示:
this.equals is not a function
经过几个小时的阅读,我明白了原因。这个函数是由Jest的expect
包提供的,它是作为上下文传递的。好吧,但是我怎么才能让它可用呢?
There's a similar question but it's a TypeScript error.
1条答案
按热度按时间3okqufwl1#
将其捆绑为ESM或IIFE,然后您可以像这样使用它