[英]Run JUnit Tests of Java SE library on Android emulator or device
我有一個簡單的庫,可以在Java SE上編譯和運行,並使用Maven構建。 測試類是JUnit測試用例(目前是4.x,降級到3.x沒問題)。
該庫可以在Android中使用,但不依賴於android.*
。 在模擬器或Android設備上運行JUnit測試是絕對必要的,因為JDK(Java SE和Android / Harmony)存在一些細微差別。
我不想將測試用例復制到Hello-Testing Android項目,而是重用現有的類。
有沒有辦法實現這個目標?
要在android模擬器上執行測試,您需要創建一個測試項目(這只能使用JUnit 3),這取決於普通的Android項目。
我建議您在庫測試中添加一個測試套件,其中包含對庫的所有測試的調用。 創建一個簡單的Hello Word Android項目。 為此項目創建Android測試項目。 然后,您可以從Android測試項目中調用新創建的測試套件,而無需復制任何測試用例。 您所做的只是構建一些Wrapper項目。
可能這不是最佳解決方案,但我設法測試在Android(模擬器或真實設備)中運行的庫。 你可以在DavidWebb上找到它。
public class DavidWebbAndroidTests extends TestSuite {
public static Test suite () {
return new TestSuiteBuilder(DavidWebbAndroidTests.class)
.includeAllPackagesUnderHere()
.build();
}
}
需要注意的是,我必須擴展所有測試,以便它們出現在Android上。
希望有人會找到更好的解決方案,但至少它有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.