假设我有一个导出默认功能的简单文件:
// UniqueIdGenerator.js
const uniqueIdGenerator = () => Math.random().toString(36).substring(2, 8);
export default uniqueIdGenerator;
我会这样使用:
import uniqueIdGenerator from './UniqueIdGenerator';
// ...
uniqueIdGenerator();
我想在测试中断言在保持原始功能的同时调用了此方法。jest.spyOn
但是,我需要一个对象以及一个函数名称作为参数。您如何以一种干净的方式做到这一点?还有一个类似的GitHub的问题为jasmine
兴趣的人。
我最终抛弃默认的导出(为什么你应该:1,2):
// UniqueIdGenerator.js
export const uniqueIdGenerator = () => Math.random().toString(36).substring(2, 8);
然后我可以像这样使用和监视它:
import * as UniqueIdGenerator from './UniqueIdGenerator';
// ...
const spy = jest.spyOn(UniqueIdGenerator, 'uniqueIdGenerator');
一些建议将它们包装在const对象中,然后导出。我想您也可以使用包装类。
但是,如果您不能修改类,那么仍然有一个(不太好的)解决方案:
import * as UniqueIdGenerator from './UniqueIdGenerator';
// ...
const spy = jest.spyOn(UniqueIdGenerator, 'default');
问题内容: 我最近想测试一些自定义方法在React组件的方法中有条件地调用。 我使用Jest作为测试框架,其中包括用于模拟/间谍的工具。我已经读过,通过执行以下操作,与Sinon一起测试将是微不足道的: 我试图像这样用Jest重新创建它: 此代码失败,并引发以下错误: 是否可以用Jest测试此功能?如果是这样,怎么办? 问题答案: 关键是使用笑话方法。应该是这样的: 如此处所示:测试功能是否被称为
做。 错误是:
本文向大家介绍vue使用ElementUI时导航栏默认展开功能的实现,包括了vue使用ElementUI时导航栏默认展开功能的实现的使用技巧和注意事项,需要的朋友参考一下 本文主要参考: http://element.eleme.io/#/zh-CN/component/menu 在使用elementUI的时候发现,能够展开的导航栏是不能展开的,效果这里先不演示了。可以在上边的网站上看到。 现在有
问题内容: 假设我有以下3个Angular UI Router状态: 如果直接转换为,我该如何告诉Angular UI Router进入状态? 理想情况下,我想要的是这样的: 然后,在我的代码中,我希望$ state.go(’adminCompanies’)等同于$ state.go(’adminCompanies.list’) 问题答案: 由于您的应用程序当前已设置,因此您不需要任何明确的逻辑。
VBox中有两个按钮。如果单击第一个按钮,然后按“tab”,焦点框架将移动到第二个按钮。所以我的问题是,如果我想使用“tab”来实现其他功能,我该如何更改、取消或阻止JavaFX中默认的“tab”功能呢?