如何在私人课程上进行junit测试?

时间:2019-08-01 22:37:38

标签: java junit5

我想在私有类上进行junit测试,嵌套到公共类中。

public class getData{
...
private class DataInfo {
 private String data;
 public String getData(){
  return data
}
}

}

是否可以测试上述私有类方法?

3 个答案:

答案 0 :(得分:0)

如果您使用JUnit,请以JUnit的方式进行。您无法测试private classthis 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