老师,你好,我不太理解invocationCallOrder,可以解析一下吗?

来源:2-11 Jest 中的 Mock(1)

慕用4150088

2020-08-17

视频中提到invocationCallOrder是调用顺序,看输出是,我想问问数组里第一个元素表示什么?数字1又表示什么?我知道这个是调用顺序,但是不是很理解
以下面的代码为例,这里函数fn是在第一行传入的时候被标识为1吗?然后放在invocationCallOrder第一个元素的位置表示第一个被调用?
这个jest.fn()是如何做到传入的时候就标记的?

  // 执行三次
  runCallback(fn) // 比如这里是第一行
  runCallback(fn) // 第二行
  runCallback(fn) // 第三行
{ calls: [ [], [], [] ],
      instances: [ undefined, undefined, undefined ],
      invocationCallOrder: [ 1, 2, 3 ],
      results:
       [ { type: 'return', value: '1234' },
         { type: 'return', value: '1234' },
         { type: 'return', value: '1234' } ] }
写回答

1回答

Dell

2020-08-23

同学你好,你说的对,当执行的时候,就已经知道fn的序号了,然后通过数组控制序号对应函数的执行顺序。

0
1
慕用4150088
非常感谢!
2020-09-04
共1条回复

前端要学的测试课 从Jest入门到 TDD/BDD双实战

自动化测试实战 Vue / React 项目,让技术水平和架构思维双提升

1434 学习 · 350 问题

查看课程