首页 > 其他分享 >明明单独跑某个测试是通过的,怎么全部一起跑就挂了呢

明明单独跑某个测试是通过的,怎么全部一起跑就挂了呢

时间:2024-07-03 22:53:45浏览次数:18  
标签:测试 明明 sum 重置 clearAllMocks jest 某个 mock

  1. 你是否遇到过单独跑test case 3是通过的,但是全部整个文件一起跑就挂了呢
  2. 你的第一反应是前面的某个依赖项影响到test case 3了
  3. 于是你在最前面写下了
    afterEach(() => {
       jest.clearAllMocks 
    })
  4.  重新跑测试文件,仍然是挂的

 

Note: clearAllMocks并不能解决所有的mock

Jest中关于清除和重置mock的方法有以下这些,他们为不同的mock做清扫工作

  • jest.clearAllMocks()

    • 清除存储在mock.calls,mock.instances,mock.context,mock.results.
    • 这种场景一般是同一个方法被call了几次,每次的数据或者参数都不一样
    • 注意:调用这个方法会替换掉mockFn.mock
  • jest.resetAllMocks()

    • 重置所有mock的状态。
    • 适用于有状态变更的测试场景
  • jest.restoreAllMocks()

    • 恢复所有的mock和替换属于的值为初始值
    • 注意:此方法只作用mock了jest.spyOn()方法和属性替换用了jest.replaceProperty().其他的mock需要手动恢复
  • jest.resetModuls()

    • 重置module的注册
    • const sum1 = require('../sum');
      jest.resetModules();
      const sum2 = require('../sum');
      sum1 === sum2;
      // > false (Both sum modules are separate "instances" of the sum module.)
    • 也可以用 isolateModulesAsync
  • jest.clearAllTimers()

    • 移除任何待办的计时器

         

标签:测试,明明,sum,重置,clearAllMocks,jest,某个,mock
From: https://www.cnblogs.com/cai-yu-candice/p/18282706/unit-test

相关文章

  • 1s内控制向某个请求请求的次数
    背景有的时候后端提供的接口对相同的IP进行限制,在某个时间内不能发送超过X条的请求,一旦超过指定的请求数会导致后续请求接口会出现异常。效果需求比如:在1s内最多同时发送2个请求,多出来的请求在后续的1s或者后续的Ns中发起代码<template><divclass="app"><el-divid......
  • 全链路性能测试:Nginx 负载均衡的性能分析和调优
    为什么性能测试很多同学觉得是一个比较难以自学上岸的测试领域,是因为真正做全链路的性能测试是比较难的。所谓的全链路就是在项目的整个链路上任何一环节都有可能存在性能测试瓶颈,我们都需要能够通过分析性能的监控指标找到对应的问题。我们今天要讲的Nginx负载均衡就是属于......
  • 交叉测试的优点和缺点
    在软件测试领域,确保产品的高质量和稳定性是每个开发团队的目标。交叉测试作为一种重要的测试方法,能够有效发现隐藏的缺陷。然而,交叉测试是否总是最佳选择?让我们一起探讨它的优点和缺点。交叉测试在软件测试中具有重要的地位和作用。通过交叉测试,可以提高软件质量、提升用户体......
  • 车载测试之-CANoe创建仿真工程
    在现代汽车工业中,车载测试是确保车辆电子系统可靠性和功能性的关键环节。而使用CANoe创建仿真工程,不仅能够模拟真实的车辆环境,还能大大提升测试效率和准确性。那么,CANoe是如何实现这些的呢?车载测试中,为什么选择使用CANoe创建仿真工程?它具备哪些独特的功能和优势,能够在复杂的车......
  • 装了一次没成功的前提下,ubuntu18.04+ros(melodic)安装 cartographer源码安装及测试---
    因为项目需要所以要安装cartographer,最开始也没仔细研究一下,随便找了一个csdn教程就跟着安装了,装了一下午,总是在最后编译的时候出错,晚上的时候心态崩了,咸鱼上找了个远程安装的,他好像是用小鱼的那个脚本安装,装了一个小时也没安装好。不死心的我又去咸鱼上找人,然后开口要两千块,两......
  • 交叉测试的优点和缺点
    在软件测试领域,确保产品的高质量和稳定性是每个开发团队的目标。交叉测试作为一种重要的测试方法,能够有效发现隐藏的缺陷。然而,交叉测试是否总是最佳选择?让我们一起探讨它的优点和缺点。交叉测试,即由不同的团队或人员相互测试彼此的代码或模块,通过这种方式,可以带来多个层面的优势......
  • 用于通信设备测试和测量: ADS8900BRGER、ADS54J20IRMP、ADC12DJ3200AAV模数转换器ADC
    1、ADC12DJ3200AAV 12位双通道3.2GSPS或单通道6.4GSPS射频采样模数转换器ADCADC12DJ3200采用具有多达16个串行通道和子类1兼容性的高速JESD204B输出接口,可实现确定性延迟和多器件同步。特性•ADC内核:–12位分辨率–单通道模式下采样率高达6.4GSPS–双通......
  • 2.测试流程
    一、软件测试流程获取测试需求---编写测试计划---制定测试方案---开发与设计测试用例---执行测试---提交缺陷报告---测试分析与评审---提交测试总结----准备下一版本测试二、软件测试过程模型测试过程的质量将直接影响测试结果的准确性和有效性。 1、V模型(要记图)优点:揭示......
  • 电源测试DCDC
    测试项目 1.输出纹波  2.动态响应Transient3.负载调整率LoadRegulation4.JitterVdsSpikeMOS管的Vds电压效率Efficency开机电源波形RiseTime&OverShootFallTime&UnderShoot下电波形OCPSCPOVP 时序PowerSequency线性调整率LineRegula......