一、目标:
1. 提高代码质量
2. 提高提测质量
3. 降低联调成本
4. 减少修改代码引入新问题
二、单元测试要点
1. 编写独立的测试类:为每个要测试的类编写一个对应的测试类,保持测试代码与实际代码分离。
2. 测试代码覆盖率:尽量确保对实际代码的所有分支和边界情况进行测试,以提高代码的覆盖率。
3. 使用断言:使用断言来验证预期结果和实际结果是否一致,确保测试的准确性。
4. 使用正确的测试数据:选择合适的测试数据来覆盖各种情况,包括正常情况、边界情况和异常情况。
5. 关注性能和效率:对于需要大量计算或IO操作的代码,可以编写性能测试来评估性能和效率。
6. 定期运行测试:要保持单元测试的实时性和有效性,建议定期运行测试,并及时处理测试中发现的问题。
7. 编写清晰的测试文档:编写清晰、易懂的测试文档,包括测试目的、测试方法、测试数据和预期结果等。
8. 对测试代码进行版本控制:将测试代码与实际代码一起进行版本控制,确保测试代码的准确性和一致性。
三、怎么写
package com.zwztf.whale.promote.service.activity;import cn.hutool.core.date.DateUtil; import com.zwztf.whale.common.client.dto.RPage; import com.zwztf.whale.common.test.annotation.WithMockUser; import com.zwztf.whale.promote.WhalePromoteApplication; import com.zwztf.whale.promote.application.fullamountgift.FullAmountGiftPromoteProviderImpl; import com.zwztf.whale.promote.client.dto.cmd.base.BasePromoteGoodsAddCmd; import com.zwztf.whale.promote.client.dto.cmd.base.PromoteGoodsAddBatchCmd; import com.zwztf.whale.promote.client.dto.cmd.base.PromoteShopAddCmd; import com.zwztf.whale.promote.client.dto.cmd.fullamountgift.FullAmountGiftPromoteAddCmd; import com.zwztf.whale.promote.client.dto.cmd.fullamountgift.FullAmountGiftPromoteCopyCmd; import com.zwztf.whale.promote.client.dto.cmd.fullamountgift.FullAmountGiftPromoteGoodsAddCmd; import com.zwztf.whal