Q
私人课堂单元测试
5
A
回答
9
在同一个包中创建单元测试类。
例如,如果位于src/main/java/com/example/MyPrivateClass.java
com.example.MyPrivateClass
然后测试类会在同一个包com.example.MyPrivateClassTestCase
,将位于src/test/java/com/example/MyPrivateClassTestCase.java
2
正如@ Kowser的回答表明,该测试可以在同一包。在Eclipse中,我假设其他IDE,可以在不同的项目中使用类,但在同一个包中。可以声明一个项目依赖于另一个项目,使其他项目的类可用。这允许一个独立的单元测试项目,该项目依赖于生产项目并遵循其包结构,但具有其自己的根目录。
该结构保持测试代码与生产代码完全分离。
3
有两种方法可以做到这一点。
标准方法是在要测试的类的相同包中定义您的测试类。这应该很容易完成,因为现代IDE在默认测试的类的相同包中生成测试用例。
非标准但非常有用的方法是使用反射。这使您可以将私有方法定义为真正的“私有”,而不是“私有包”。例如,如果你有课。
class MyClass {
private Boolean methodToBeTested(String argument) {
........
}
}
你可以有你这样的测试方法:
class MyTestClass {
@Test
public void testMethod() {
Method method = MyClass.class.getDeclaredMethod("methodToBeTested", String.class);
method.setAccessible(true);
Boolean result = (Boolean)method.invoke(new MyClass(), "test parameter");
Assert.assertTrue(result);
}
}
相关问题
- 1. 嵌套私人方法单元测试
- 2. 课堂扩展中声明的单元测试方法
- 3. Enum的做法 - 定义在课堂/单独,公开/私人
- 4. 在课堂测试中出现NullPointerException
- 5. 单元测试私有类
- 6. 在课堂上正确组织公共/保护/私人功能
- 7. 在私人课堂上:访问“外部班级”的成员?
- 8. 课堂上的静态地图 - 公共还是私人?
- 9. 在Google课堂中是否有私人评论的API?
- 10. 在课堂申报中混合抽象与公开/私人
- 11. 什么是“私人财产”在ES6课堂上的意思?
- 12. 我如何在私人课堂上访问功能?
- 13. 在课堂上抱怨私信
- 14. 春季,交易和单元测试 - 如何在课堂级别设置交易
- 15. 单元测试课 - 抛出错误吗?
- 16. iOS单元测试私人模拟对象?
- 17. 单元测试私人安装问题(C#)
- 18. WPF MVVM - 单元测试命令 - 私人与公共方法?
- 19. 如何编写私人clojure函数的单元测试?
- 20. 如何写私人方法的单元测试
- 21. 你在哪里把私人方法的单元测试?
- 22. 适用于私人方法的单元测试
- 23. 本体设计:课堂或个人
- 24. Java机器人课堂按特别信?
- 25. PHPUnit测试问题 - 如何单元测试我的课
- 26. 函数隐私和单元测试Haskell
- 27. Akka的单元测试私有方法
- 28. 私有方法的单元测试c#
- 29. 单元测试私有方法的C#
- 30. 单元测试私有方法
是他们私人或包专用?如果它们是私有包,那么你可以像其他任何类一样测试它们,只要你的测试在同一个包中(它们应该); ... – assylias