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
}
相关推荐
金銀銅鐵1 小时前
[Java] 从 class 文件看 EasyMock 对 @Mock 注解的处理
后端·单元测试
Boop_wu2 小时前
[Java EE 进阶] Spring Boot 日志全面解析 : 配置与实战
junit·java-ee·单元测试
网络安全-杰克4 小时前
单元测试 Mock不Mock?
自动化测试·软件测试·单元测试
老神在在0011 天前
测试分类+自动化测试01
功能测试·学习·单元测试·postman
Lyyaoo.1 天前
适配器模式
单元测试·适配器模式
小陈工1 天前
2026年3月27日技术资讯洞察:量子计算密码突破、硬件安全新范式与三月网络安全警报
服务器·python·安全·web安全·单元测试·集成测试·量子计算
Greg_Zhong1 天前
认识前端自动化测试、小程序中如何实现单元测试
前端·小程序·单元测试
lierenvip2 天前
Spring Boot 整合 log4j2 日志配置教程
spring boot·单元测试·log4j
武超杰2 天前
SpringBoot 进阶实战:异常处理、单元测试、多环境、日志配置全解析
spring boot·单元测试·log4j
Samson Bruce2 天前
【单元测试】
单元测试·log4j