我是新来的Junit测试,想测试一个类中的私有方法。但它导致可见性问题。我可以测试一个私有方法或使用Junit.Or保护的方法,我可以测试一个Junit构造函数中的逻辑?Junit测试私有方法
0
A
回答
-1
简单地做这样的:
private someMethod() {}
public someMethodVisibleToAll() {
someMethod();
}
这不是隐藏在私有方法复杂的逻辑,没有任何接入测试是一个好主意,试图使方法幂(无副作用)。
如果遗留代码使用Powermock,但首先尝试重构上面的代码,如果它不可能比Powermock作为最后的紧急中断。
只是通知:如果您使用的惯例,JUnit测试具有相同的包名称,如
代码的src/main/java的
package my.package.first
JUnit中的文件夹
的src/main受保护的方法是testbable /测试
package my.package.first
比你的所有受保护的方法可用来测试
更新:
应该始终有通过公开方式或间接地测试私有方法的方式保护其使用或包括使用的私有方法能方便的测试情况。如果这不是真的,并且您不依赖于遗留代码或第三方代码,那么这是一个警告,指出类设计有什么问题。
相关问题
- 1. JUNIT - 测试方法
- 2. junit测试异常方法
- 3. 我需要关注在JUnit测试中测试“公共”方法还是“私有”方法?
- 4. 如何测试私有方法?
- 5. 使用Pex测试私有方法
- 6. 集成测试私有类和方法
- 7. Akka的单元测试私有方法
- 8. 测试私有方法,澄清需要
- 9. 单元测试私有方法的C#
- 10. 如何测试私有方法?
- 11. 私有方法的单元测试c#
- 12. JUnit测试:静态方法调用到测试方法
- 13. Java单元测试:替换测试中的私有方法
- 14. 很长的方法和测试私有方法 - 设计问题
- 15. Junit 3,从java方法开始测试
- 16. 在JUnit测试“方法$未定义”
- 17. 用junit测试流口水的方法
- 18. 使用JUnit的测试方法
- 19. 无效方法的Junit测试用例
- 20. JUnit测试中的覆盖方法
- 21. 测试方法 - 数据库,Junit
- 22. JUnit测试isEmpty()堆栈方法
- 23. 用于同步方法的JUnit测试
- 24. Junit使用void方法测试
- 25. java的JUnit测试等方法
- 26. JUnit测试这个特定的方法
- 27. JUnit - 不等待测试方法完成
- 28. junit和java:测试非公开方法
- 29. 嵌套私人方法单元测试
- 30. JUnit测试找不到我想测试的方法
可能重复[如何测试具有私有方法,字段或内部类的类?](http://stackoverflow.com/questions/34571/how-to-test-a-class-that-has- private-methods-fields-or-inner-classes) –