jest:测试套件无法运行,TypeError:无法读取undefined的属性'bind'

时间:2017-03-09 10:16:42

标签: react-native jestjs babel-jest

我们在反应原生中使用来自单元测试的jest。它运作良好。 我们刚刚删除了npm并再次安装它,然后当我们尝试运行单元测试(npm测试)时,我们收到以下错误,我们无法运行测试用例。

enter image description here

可能出了什么问题。

5 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。我开始使用只有jest的几个测试,然后我在另一台机器上使用create-react-app初始化文件夹并恢复以前的测试。之后,我切换回我当前的机器,执行npm安装并运行测试。它给了我这个错误,所以我删除了node_modules并再次安装了npm。现在所有的测试都是绿色的。

答案 1 :(得分:0)

将jest-cli版本从18升级到19解决了这个问题。

Issue in github repo of jest

答案 2 :(得分:0)

尝试重新安装jest和jest babel最新版本

npm install --save-dev jest

npm install --save-dev babel-jest regenerator-runtime

重新运行测试,它适用于我

答案 3 :(得分:0)

我有同样的错误:

Test suite failed to run, TypeError: Cannot read property 'bind' of undefined

与@Harish_N类似,但我使用 react-scripts

在我的案例中完全是关于将测试相关依赖项更新为 package.json 中的较新版本。

答案 4 :(得分:0)

如果您在

中添加了这一行代码
global.requestAnimationFrame = function(callback) {
    setTimeout(callback, 0);
};

“ package.json”中名为“ shim.js”或“ setupshim.js”的文件:

"setupFiles": [
     <rootDir>/__test__/setup/shim.js 
],

删除此文件。这将有助于消除“笑话”单元测试中的此错误。

这对我有用,希望这对您也有用。