react 项目 测试

本文介绍如何使用Enzyme进行React组件的测试,包括如何模拟、操纵和遍历React组件输出,以及如何使用jest.spyOn来测试特定方法。同时,还提供了在Ant Design表单中进行必填项模拟的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • Enzyme 来自 airbnb 公司,是一个用于 React 的 JavaScript 测试工具,方便你判断、操纵和历遍 React Components 输出。Enzyme 的 API 通过模仿 jQuery 的 API ,使得 DOM 操作和历遍很灵活、直观。Enzyme 兼容所有的主要测试运行器和判断库。
  • jest.spyOn : 当需要测试某些必须被完整执行的方法时,常常需要使用jest.spyOn()
    • 1) 如果是箭头函数的定义

      // react 组件中的一部分代码
      test = () => {}

      测试用例中mock此函数 方法如下

      const wrapper = mount(<Component />);
      const spyTest = jest.spyOn(wrapper.instance(), 'test'); // 在mount组件之后
      // mock 完成后可以被调用
       spyTest();
    • 2) 如果是bind 绑定的函数

      test() {}

      测试用例中mock此函数 方法如下

       const spyTest = jest.spyOn(Component.prototype, 'test'); //在mount组件之前
       mount(<Component />)
      // mock 完成后可以被调用
       spyTest();
  • antd form 设计到必填项时候mock方式如下
    wrapper.find('input#id').simulate('change', {target: {value: 'test'}});

转载于:https://www.cnblogs.com/Running00/p/11584194.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值