单元测试生成

为函数生成完整单元测试

提示词

请为以下代码生成单元测试:

`
[粘贴代码]
`

要求:
1. 使用[测试框架,如Jest/Pytest/JUnit]
2. 覆盖正常情况、边界情况、异常情况
3. 测试用例命名清晰(描述测试场景)
4. 包含setup和teardown(如需要)
5. Mock外部依赖
6. 测试覆盖率目标:100%分支覆盖

代码功能说明:[简要描述代码做什么]

示例输出

import { calculateDiscount } from './discount';

describe('calculateDiscount', () => {
  // 正常情况
  test('should apply 10% discount for orders over 100', () => {
    expect(calculateDiscount(150, 'NORMAL')).toBe(135);
  });

  // 边界情况
  test('should not apply discount for orders exactly 100', () => {
    expect(calculateDiscount(100, 'NORMAL')).toBe(100);
  });

  test('should apply 20% discount for VIP members', () => {
    expect(calculateDiscount(150, 'VIP')).toBe(120);
  });

  // 异常情况
  test('should throw error for negative amount', () => {
    expect(() => calculateDiscount(-50, 'NORMAL')).toThrow('Invalid amount');
  });
});
0

评论 0

更多

登录后可点赞、收藏、评论和举报。

还没有评论,先发起一个具体问题。