当前位置:网站首页>jasmine.any(Function) 的一个使用场景
jasmine.any(Function) 的一个使用场景
2022-08-04 15:52:00 【华为云】
显然,Web 应用中某些功能比其他功能更容易测试。 例如,可以轻松测试纯函数,因为它的返回值对于相同的参数是相同的,并且它的评估没有副作用。 另一方面,一个 UI 组件(例如日历组件)可能有多个子组件、各种输入和输出,并且依赖于外部 API。 有时,很难说测试应该有多彻底。 在某些情况下,验证 happy path 可能就足够了。 在其他情况下,当它是关键软件部分时,您可能希望检查所有边缘情况。
在各种边缘情况的测试用例编写中,就是 jasmine.any(Function) 大显身手的时候。该函数的一个使用场景:
it(`should pass parameters to the original engine instance`, () => { expect(originalEngineInstance).toHaveBeenCalledWith( mockPath, mockOptions, jasmine.any(Function) ); });
语义:
originalEngineInstance 被调用时,传递的第三个参数是任意的函数,即 jasmine.any(Function) 返回的引用。
但是,这个任意的函数,不能是 mockCallback.
it(`should apply optimization wrapper`, () => { // we check, that callback is not the original one expect(originalEngineInstance).not.toHaveBeenCalledWith( mockPath, mockOptions, mockCallback ); });
我们可以通过调试的方式,找到运行时第三个参数,实际是一个定义如下的函数:
而 jasmine.any(Function) 返回的引用,如下图绿色高亮区域所示:
真实被调用的 callback 是这个:
即代码228行指定的函数:
边栏推荐
- flink cdc怎么指定位点,从某个位点开始消费mysql的Binlog?
- Request method ‘POST‘ not supported。 Failed to load resource: net::ERR_FAILED
- 软件性能测试包括哪些内容?国内权威软件检测机构排名
- What is the difference between ITSM software and a work order system?
- 云存储硬核技术内幕——(11) 女子会所的秘密
- 现代 ABAP 编程语言中的正则表达式
- 番茄插件番茄助手下载
- 云存储硬核技术内幕——(8) 只缘身在此山中
- OGG判断mgr状态并自动启动脚本
- 保证通信的机制有哪些
猜你喜欢
录音文件识别
字节API鉴权方法
视频字幕API接口文档
《电磁兼容防护EMC》学习笔记
有哪些好用的IT资产管理平台?
Request method ‘POST‘ not supported。 Failed to load resource: net::ERR_FAILED
A detailed explanation of what is software deployment
Many merchants mall system function and dismantling 24 - ping the strength distribution of members
招募 | 香港理工大学Georg Kranz 博士诚招博士
吴恩达机器学习[13]-支持向量机
随机推荐
如何实时监控销售数据?销售看板来帮你!
74行代码实现浪漫的红心下落的动画效果
《2022 年上半年全球独角兽企业发展研究报告》发布——DEMO WORLD世界创新峰会圆满落幕
"Research Report on the Development of Global Unicorn Enterprises in the First Half of 2022" released - DEMO WORLD World Innovation Summit ended successfully
阿尔萨斯监控平台&普罗米修斯监控平台对服务器资源的监控
实战:10 种实现延迟任务的方法,附代码!
Roslyn 在多开发框架让 msbuild 的 Target 仅运行一次
吴恩达机器学习[9]-神经网络学习
JVM Tuning-GC Fundamentals and Tuning Key Analysis
攻防视角下,初创企业安全实战经验分享
云存储硬核技术内幕——(12) 皮洛士惨胜罗马军团
dot net double 数组转 float 数组
Go 事,Gopher 要学的数字类型,变量,常量,运算符 ,第2篇
RepVGG学习笔记
爬虫小白笔记(昨天的对于注意解析数据的补充)
无心剑七绝《七夕牵手》
Redis持久化操作
云存储硬核技术内幕——(8) 只缘身在此山中
Go Go 简单的很,标准库之 fmt 包的一键入门
(2022杭电多校五)C - Slipper (dijkstra+虚拟结点)