相关疑难解决方法(0)

在单元测试中使用Reflection是不好的做法吗?

在过去的几年里,我一直认为在Java中,Reflection在单元测试中被广泛使用.由于某些必须检查的变量/方法是私有的,因此必须以某种方式读取它们的值.我一直认为Reflection API也用于此目的.

上周我不得不测试一些软件包,因此编写了一些JUnit测试.像往常一样,我使用Reflection来访问私有字段和方法.但我检查代码的主管对此并不满意,并告诉我,Reflection API并不适合用于此类"黑客攻击".相反,他建议修改生产代码中的可见性.

使用Reflection是不是很糟糕的做法?我真的不相信 -

编辑:我应该提到我需要所有测试都在一个名为test的独立包中(所以使用受保护的visibilty例如也不是一个可能的解决方案)

java reflection unit-testing

94
推荐指数
6
解决办法
4万
查看次数

标签 统计

java ×1

reflection ×1

unit-testing ×1