且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Angular单元测试框架里API toHaveBeenCalledTimes的工作原理

更新时间:2022-09-13 12:32:56

Angular单元测试框架里API toHaveBeenCalledTimes的工作原理spiedFirstFocusable是spyOn方法针对实例keyboardFocusService的findFirstFocusable方法进行监控后返回的句柄。借助该句柄,我们可以使用toHaveBeenCalledTimes方法,得到其在单元测试过程中实际调用的次数。

Angular单元测试框架里API toHaveBeenCalledTimes的工作原理Angular单元测试框架里API toHaveBeenCalledTimes的工作原理Angular单元测试框架里API toHaveBeenCalledTimes的工作原理Angular单元测试框架里API toHaveBeenCalledTimes的工作原理Angular单元测试框架里API toHaveBeenCalledTimes的工作原理Angular单元测试框架里API toHaveBeenCalledTimes的工作原理Angular单元测试框架里API toHaveBeenCalledTimes的工作原理Angular单元测试框架里API toHaveBeenCalledTimes的工作原理以后我们可以直接在函数toHaveBeenCalledTimes里设置断点调试。

  1. 检查传入的actual是否是一个spied后的函数。
  2. 将检查结果设置成默认值false.
  3. 检查传入的期望调用次数的值的数据类型是否是Number

Angular单元测试框架里API toHaveBeenCalledTimes的工作原理Angular单元测试框架里API toHaveBeenCalledTimes的工作原理这个数组里包含的监控到的方法调用信息有:

  1. 方法调用的输入参数
  2. 调用方法的实例对象
  3. 调用方法的返回参数
    "get the number of invocations of this spy"的实现方法:calls.lengthAngular单元测试框架里API toHaveBeenCalledTimes的工作原理Angular单元测试框架里API toHaveBeenCalledTimes的工作原理