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/ –

相关问题