1

我想爲我的android應用程序編寫功能測試用例。我不是在談論發送點擊按鈕或UI相關事件,我提到了代碼覆蓋或例如我想檢查我的解析器是否正常工作,我的登錄調用是否成功?總之,如何編寫功能測試用例,任何鏈接或教程都非常感謝。 還有爲我的項目設置測試框架的任何建議。我正在開發Android Studio。如何在android中使用JUnit測試webService調用代碼?

+0

現在使用Junit測試您的Web服務響應... http://findnerd.com/list/view/Testing-Web-Service-response-using-Junit-in-Android/3193/ –

回答

0

你應該看看使用Robolectric。關於如何設置,請查看deckard-gradle

+1

歡迎來到Stack Overflow!請註明鏈接的最相關的部分,如果目標站點不可達或永久脫機狀態。請參閱[我如何寫出一個好答案](http://stackoverflow.com/help/how-to-answer)。 – ByteHamster

+0

現在使用Junit測試你的web服務響應... http://findnerd.com/list/view/Testing-Web-Service-response-using-Junit-in-Android/3193/ –

1

首先,添加JUnit來的項目,通過在build.gradle文件中添加此:

dependencies { 
    testCompile 'junit:junit:4.12' 
} 

然後,請確保您有位於同一水平作爲你的主目錄中的test目錄,這樣:

app 
└─── src 
    ├─── main 
    │ ├─── java 
    │ │ └─── com.example.app 
    │ └───res 
    └─── test 
      └─── java 
       └─── com.example.app 

然後你就可以繼續前進,創建一個測試類,例如:

import org.junit.Test; 

import static org.junit.Assert.assertEquals; 

public class LogicTest { 
    @Test 
    public void addingNumbersShouldReturnSum() { 
     Logic logic = new Logic(); 

     assertEquals("2 + 2 must be 4", 4, logic.add(2, 2)); 
    } 
} 

如果您的版本爲1.1或更高版本,則可以通過執行gradlew testDebug或從Android Studio在調試版本上運行這些測試。 查看http://tools.android.com/tech-docs/unit-testing-support瞭解更多信息。

+0

嗨Kevin,謝謝你的回覆。所以這意味着,我的每一個方法都應該返回一些東西,這樣才能在測試類中驗證它,是嗎?那麼關於例如一個成功的登錄電話,我們直接導航用戶到主頁而不是返回一些東西。同樣適用於我的解析器類,它們只是將數據設置爲模型類,而不返回任何內容。如何處理這些案件? –

+0

在這種情況下,您不需要單元測試,但需要集成測試。如果您想這樣做,最簡單的方法就是設置Espresso:https://code.google.com/p/android-test-kit/wiki/EspressoSetupInstructions – kevinpelgrims

+0

現在使用Junit測試您的Web服務響應.. .http://findnerd.com/list/view/Testing-Web-Service-response-using-Junit-in-Android/3193/ –

相關問題