java 单元测试 私有成员变量,java-没有getter的单元测试私有集合

我有一个具有方法的类ProductRegister

private List products = new CopyOnWriteArrayList<>();

void registerProduct(Product p) {

products.add(p);

}

记住产品是私有的,没有吸气剂,并且是在类内部创建的,我该如何对它进行单元测试?我已经考虑过添加吸气剂,但这不是暴露我不希望别人知道的内部逻辑吗?

解决方法:

您要对产品ProductRegister而不是CopyOnWriteArrayList进行单元测试.因此,问题必须是如何测试方法registerProduct(Product)是否完成了应做的工作.您没有返回值,因此我将结合其他方法对其进行测试.也许您有另一种方法返回注册产品,以便可以断言True(< registeredProducts> .contains(product))吗?

编辑:这样,如果您更改实现,则无需更改JUnit测试(例如,使用另一个集合代替CopyOnWriteArrayList).

标签:unit-testing,java

来源: https://codeday.me/bug/20191111/2021905.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值