我想在私有类上进行junit测试,嵌套到公共类中。
public class getData{
...
private class DataInfo {
private String data;
public String getData(){
return data
}
}
}
是否可以测试上述私有类方法?
答案 0 :(得分:0)
如果您使用JUnit
,请以JUnit
的方式进行。您无法测试private class
,this link可能与您面临的问题有点相似。
答案 1 :(得分:0)
将类设为私有的主要原因之一是,使其无法在其他地方使用。这样一来,如果您想更改私有类的工作方式,甚至完全删除它,就不必担心可能破坏其他代码。单元测试专用代码通常无法达到目的-当您想要更改该代码时,您确实需要担心破坏单元测试并进行更改。通常只需测试私有类所在的公共类就足够了。
但是...有时您确实遇到了要测试私有类或方法的情况。在这种情况下,此答案应该使您对从何处开始有了一个很好的了解:How do I test a private function or a class that has private methods, fields or inner classes?
答案 2 :(得分:-1)
也许您可以使用reflection
来实现。
引用此:
test using reflection