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