我需要在我的應用程序中使用第三方.jar庫:不幸的是,第三方應用程序的設置方式使得它幾乎不可能在我的Windows上進行測試盒子(因爲它是爲unix環境設置的 - 我會省下細節)。所以我重構了它可以測試它(改變了使用maven/spring的結構,所以屬性文件的處理更加靈活,不需要改變調用接口)。如果新版本編譯爲相同的.jar名稱/版本/等。我大概可以在本地測試它,然後在「真正的」.jar文件中編譯生成。這是愚蠢的想法嗎? (我有強烈的預感,因爲我引入了一個不平凡的依賴......)。如果是這樣,我該如何更好地測試這個庫(不需要將我自己的重構更改合併到原始代碼中)?通過「引用」而非內容測試.jar庫
0
A
回答
2
從概念上講,您已將第三方jar拆分爲兩個 - 屬性位和其餘部分。你用自己的東西替換屬性位,然後繼續測試剩下的東西。在發佈時,您需要準備一個軟件包,其中包括您已測試的軟件以及您尚未使用的原始軟件。採取這種方法時,您介紹了哪些風險?
- 您發佈的代碼不會是你測試的代碼 - 這是一個不同的JAR,儘管小心處理不是一個非常不同的JAR - 所以,如果你相信自己得到它的權利,這可能是一個可以接受的風險。
- 您未測試的代碼已損壞。這表明至少需要在真實平臺上進行一些測試。
- Windows上的測試給出了與Unix上的測試不同的結果。再次表明一定程度的Unix測試。
我認爲你的觀點是務實的,並且可以通過在Unix上至少執行一些測試來減輕風險。我假設你的基於Windows的測試是爲了便於開發/調試。我會這樣做,但我會嘗試構建一個可以在Unix上運行的迴歸測試套件 - JUnit測試可以在那裏運行。
相關問題
- 1. 反向引用的測試內容?
- 2. 容器'Android Dependencies'引用非現有庫appcompat_v7.jar'
- 3. 使用Authlogic測試通過「autotest」而不是「rake測試」
- 4. MS測試單元測試引發的事件內容
- 5. 燼測試通過鉻,而不是phantomjs
- 6. 量角器通過測試而不運行測試
- 7. 引用C++而不通過引用
- 8. 測試NullReferenceException(不測試任何內容)
- 9. 容器'Maven Dependencies'引用非現有庫
- 10. Singleton HSQLDB數據庫通過測試
- 11. 調試Intellij中的jar內容Idea
- 12. 無法通過Django測試對數據庫的更改測試
- 13. 測試未通過
- 14. 容器的'Android Dependencies'引用非現有的appcompat_v7.jar
- 15. 測試網頁內容
- 16. 硒遞歸內容測試?
- 17. loadHTML($ str)的測試內容
- 18. 測試內容與功能
- 19. 通過.sh腳本對java jar進行基準測試
- 20. 用「通過引用調用」修改對象的內容
- 21. 通過非安全通道載入內容
- 22. VBA如何通過命名範圍名稱爲式而非細胞內容
- 23. 如何通過引用非託管庫傳遞託管數組?
- 24. 引導內核測試
- 25. 通過返回非const引用成員
- 26. 在非空白字符上測試字符串內容
- 27. webpack需要非js的內容在單元測試
- 28. 使用Selenium自動測試UIWebView內容
- 29. 使用ActionMailer發送測試PDF內容
- 30. 獲取jar內容
我們通常不會測試第三方庫,它需要測試它的第三方。不是嗎? – 2009-10-28 08:48:14