当前位置: 首页 > java >正文

React-Query使用react-testing-library进行测试

1.测试react-query首先我们必须得拥有queryClient,所以我们初始化queryClient,因为默认是重试三次,这意味着如果想测试错误的查询,测试可能会超时。所以可以在初始化时关闭

const createWrapper = () => {const queryClient = new QueryClient({defaultOptions: {queries: {retry: false,},},});return ({ children }) => <QueryClientProvider client={queryClient}>{children}</QueryClientProvider>;
};

2.网上很多还要引入依赖@testing-library/react-hook,因为请求是异步的, 上面这个库提供了waitFor等待数据返沪,但是目前@testing-library/react也已经提供。使用方法如下

it('testing product detail query', async () => {const { result } = renderHook(() => useQueryProductDetail(''), {wrapper: createWrapper(),});await waitFor(() => expect(result.current.isSuccess).toBe(true));});

3.正常测试使用react-query的组件时,也需要创建queryClient,具体代码如下

it('test render search detail', async () => {const queryClient = new QueryClient();const { debug, findByText, findByRole } = await render(<QueryClientProvider client={queryClient}><SearchDetail /></QueryClientProvider>);//debug(await findByRole('qwe'));});

建议读读该文章,更详细的讲述了如何进行ReactQuery的测试https://tkdodo.eu/blog/testing-react-query

最后编辑于:2025-05-18 10:43:28


喜欢的朋友记得点赞、收藏、关注哦!!!

http://www.xdnf.cn/news/7147.html

相关文章:

  • c/c++的opencv直方图初识
  • HarmonyOS:应用文件访问(ArkTS)
  • C++算法(23):memset原理、性能对比与替代策略
  • 数据共享的艺术
  • C++中的容器
  • 进程和线程的区别和联系
  • FreeRTOS的学习记录(中断管理)
  • 5.18打卡
  • 延时双删-争议与我的思路-001
  • 动态通讯录程序
  • P1009 [NOIP 1998 普及组] 阶乘之和
  • 深入理解 LangChain 文档处理机制:Document 类与文档加载器详解
  • uni-app学习笔记七-vue3事件处理
  • 优化 Spring Boot 应用启动性能的实践指南
  • 单片机超频怎么搞?
  • 实时时钟项目设计
  • 腾讯云证书过期提醒的应对措施,Caddy 自动管理的 Let‘s Encrypt 证书.
  • 使用国内源加速Qt在线安装
  • Docker拉取镜像报错Error response from daemon: Get “https://registry-1.docker.io/v2/“
  • 测试--测试分类 (白盒 黑盒 单元 集成)
  • vscode中Debug c++
  • Android开发-列表类视图
  • 亚马逊新品3周冲刺BSR前10:数据驱动的冷启动破局指南
  • 模型评估与调优(PyTorch)
  • 四品种交易策略
  • MetaMask安装及使用-使用水龙头获取测试币的坑?
  • C++ThreadPool
  • 回溯实战篇3
  • 新电脑软件配置二:安装python,git, pycharm
  • 2025年PMP 学习二十 第13章 项目相关方管理