我有以下函数,它以React.useRef()作为参数。
在测试它时遇到问题,我试图让useRef保存值并能够removeChild()。
当我运行测试时,我会得到以下错误。
TypeError: useRef.current.removeChild不是一个函数
这是因为在测试期间,我传递的是一个对象而不是一个useRef钩子函数。
如何传入模拟的useRef并能够在测试期间传递值和执行removeChild操作?
这就是实现。
export const postData = (
useRef, // this useRef is coming from the calling com
我有一个异步事件createEvent,它包含fetch,用于将数据保存到DB,成功时返回true,失败时返回false,出错时返回null。它实际上正在正确地执行此操作,如运行以下代码所示: let result = await createEvent(newEvent);
console.log("Result:", result);
if (result) {
setMessage("Event added!");
} else {
setMessage("Error adding event, please try again late
问题
我正在尝试测试一个内部组件库的新版本,它最近升级了一些依赖项,现在在内部使用 26。该库还导出了一些测试助手。
在另一个利用上述组件库的代码库中,我在运行某些单元测试时得到以下信息:
TypeError: MutationObserver is not a constructor
at /<path_to_repo>/node_modules/@testing-library/dom/dist/wait-for.js:78:18
这可能与组件库导出的测试助手依赖Jest 26有关,也可能与此无关。(很难说这些助手是否被使用-我们有一些非常大的“单元”测试。)
相关的
我得到一个错误,最终崩溃了一个反应组件的测试。我使用阿波罗钩子突变useMutation和酶的成分发现通过id。
repo code\node_modules\react-dom\cjs\react-dom.development.js:154
var evt = document.createEvent('Event'); // Keeps track of whether the user-provided callback threw an error. We
^
TypeError: Cannot read
我是使用UseHistory钩子在反应路由器v5.1.2与类型记录?在运行单元测试时,我遇到了问题。
TypeError:无法读取未定义的属性“历史记录”。
import { mount } from 'enzyme';
import React from 'react';
import {Action} from 'history';
import * as router from 'react-router';
import { QuestionContainer } from './QuestionsContai
我试图实现Jest网站中显示的示例:。
在运行npm test时,我得到了以下错误:
FAIL src/sum.test.js
● Test suite failed to run
TypeError: environment.setup is not a function
at node_modules/jest-runner/build/run_test.js:112:23
sum.js
function sum(a, b){
return a+b;
}
module.exports = sum;
sum.test.js
const sum = requi
TypeError:无法读取未定义的属性“提取”
在节点_模块/什么地方-获取/获取. at :4:8在对象。(节点_模块/什么-获取/获取. at :466:3)在对象。(节点_模块/jest-expo/src/setup.js:97:348)
在运行jest-expo测试时出错了。如果有人有解决办法,请分享。
具有反应测试的初学者,
我正在使用jest和react测试库,这里我有一个组件'A‘,这是一个模式,我试图对它进行测试,当用户点击一个按钮’删除链接‘时,这个模式应该消失(函数onDelete)。正如你所看到的,我使用FireEvent.click()点击按钮,所以当它将toHaveBeenCalledTimes(0)从0改为1时,我得到了Expected number of calls: 1 Received number of calls: 0,不应该期望和接收都是1吗?
单击Delete Link后,用户应该看不到end组件(模态)。
有没有人能给我点启发?如有任何建议或帮助,我
我有一个React视图,它与商店通信。我已经成功地分别测试了视图和存储,但没有结合起来。
我跟踪了,但收到了TypeError。看起来Jest正在尝试将商店注册为一个组件,即使我使用了dontMock。
Using Jest CLI v0.2.0
PASS __tests__/unit/spec/stores/ViewStore-spec.js (0.248s)
FAIL __tests__/unit/spec/components/View-spec.react.js (0.942s)
undefined
● View › it defaults to zero unread
-
我们已经编写了一个反应库,我们正在使用的另一个应用程序。当我使用npm link ../myLibrary时,运行Jest测试将失败,其中包含以下消息:
TypeError: Cannot read property 'webpackChunk_my_library' of undefined
我可以通过编辑Jest配置来解决这个问题:
"transformIgnorePatterns": [
"../myLibrary"
],
但这会产生其他问题..。
Invalid hook call. Hooks can only be called
我正在尝试使用jest和react测试库对自定义钩子进行单元测试,在这种情况下抛出错误,但我无法捕获实际的错误消息,以下是我到目前为止的代码:
我的第一个钩子:
import react from 'react';
const useFirstHook = () => {
//I will add conditional logic later
throw new Error('my custom error is thrown')
const test1 = 'I am test 1';
retur
我试图从npm库@react-native-firebase/remote-config中模拟远程配置模块,但是我一直得到这个错误。我试图在下面嘲弄它,但很明显,它肯定是不正确的--我只是不知道什么是不正确的。
Test suite failed to run
TypeError: (0 , _remoteConfig.default)(...).setDefaults is not a function
jest.mock("@react-native-firebase/remote-config", () => ({
__esModule: true,
我目前正在创建一个电子应用程序,它使用React来创建接口。为了访问fs,我一直在使用:
const fs = window.require('fs');
当你在电子窗口工作的时候。
问题是,当我为使用window.require('fs')的任何组件编写jest测试时,在运行测试时会得到以下错误。
TypeError: window.require is not a function
我已经查看了Jest的文档,解决方案似乎是使用手动模拟生成一个模拟窗口(请参阅上“在JSDOM中未实现的模拟方法”)。但是,当我试图通过添加测试文件的顶部来模拟window.re