Jest单元测试相关

官方文档:jest 中文文档

1、模拟某个函数,并返回指定的结果

使用Jest测试JavaScript(Mock篇)

有这样一个需求,mock掉Math.random方法(0(包括)~1之间),使其返回指定的0.1:

javascript 复制代码
jest.spyOn(global.Math, 'random').mockReturnValue(0.1);
javascript 复制代码
test('when rate is 0~1, will not be sampled randomly', () => {
  jest.spyOn(global.Math, 'random').mockReturnValue(0.1);
  const result = sampler.shouldSample({
    ...SAMPLE_OPTIONS,
    options: { rate: 0.5 },
  });
  expect(result.decision).toEqual(true);
});

public shouldSample(config: Config): api.SamplingResult {
  const { rateDaily, rateCampaign } = this._options;
  const { options } = config;
  const rate = normalize(
    typeof options?.rate === 'number'
      ? options.rate
      : getCurrentRate(rateDaily, rateCampaign)
  );
  return { decision: rate !== NOT_SAMPLED_RATE && Math.random() < rate }; // 希望这里能指定返回true
}
相关推荐
程序员天天困11 小时前
JaCoCo 代码覆盖率:Spring Boot 集成与报告解读
单元测试·测试
●VON12 小时前
HarmonyKit | 鸿蒙开发:项目目录结构与多模块架构最佳实践
华为·架构·单元测试·harmonyos·鸿蒙
Csvn13 小时前
单元测试"假绿"实录:测试全过但线上崩了,这 3 个坑你踩过吗?
单元测试
oscar99921 小时前
4.6 单元测试的重构:把交易策略封装成可独立验证的函数
重构·单元测试·财富源代码
ck-joker1 天前
23个测试全绿,一个Token没花——LLM应用的单元测试该怎么写?
语言模型·单元测试
Lucky_5566882 天前
软件登记测试报告用途与完整办理流程|山东本地第三方测评机构服务
经验分享·功能测试·单元测试
醉熏的斑马3 天前
ASP.Net MVC3 】使用Moq让单元测试变得更简单
单元测试·log4j·asp.net
ckjoker5 天前
23个测试全绿,一个Token没花——LLM应用的单元测试该怎么写?
单元测试·agent
川石课堂软件测试6 天前
性能测试|Nginx中间件监控与调优
linux·python·nginx·中间件·单元测试·压力测试·harmonyos
想你依然心痛8 天前
嵌入式单元测试:Unity/CMock框架与硬件在环测试——测试驱动、桩函数
unity·单元测试·游戏引擎