如何在模拟器或Android测试之外构建和测试Android应用程序的数据层?

时间:2015-11-20 13:23:53

标签: android gradle

我想在Android环境之外完全构建和测试Android应用的网络和数据层。这将是进行网络调用以获取JSON数据然后将JSON对象转换为Java对象的类。

为了测试这段代码,我只想编写一个带有简单" main"的程序。可以解析一些命令行参数,执行一些代码并提供一些输出的函数。

我该怎么做?我对Android和Java比较陌生。我猜测解决方案涉及一些修补Gradle构建配置。

在测试这些组件之后,我想将它们合并到特定的Android项目中。但在此之前,我希望能够在命令行和简单的Vim编辑器上开发代码中这些棘手的代码而不需要Android Studio和Emulator的所有包袱和混乱。

3 个答案:

答案 0 :(得分:1)

编写自己的java项目,使用apache HttpClient和JSon(可选:Gson), 你也可以使用PostMan等其他工具。两者都用于网络测试。

答案 1 :(得分:0)

如果你在一个独立于android的类中包装负责检索远程JSON数据的逻辑,你可以围绕它编写一个Junit测试。要运行此测试,您不需要启动模拟器(只要您不在该类中嵌入任何Android逻辑)。

答案 2 :(得分:0)

(如果这些适用于您,则非常感谢您的支持。感谢您的耐心等待)

我理解这个问题的方法是你想节省学习android开发所需的时间。

以下是一些用于在android开发中节省时间的技巧。

  • 除了使用hello world屏幕的简单活动(在启动新项目时是android中的默认模板)之外,不要使用任何UI元素。简单来说,没有按钮,没有文本框。实际上根本没有触摸输入。(当应用程序的核心功能正常时,做你想做的任何事情。)
  • 直接在对服务器的请求中设置样本值(例如直接在请求中设置完整URL)。
  • 使用System.out.println将收到的数据输出到控制台。再没有TextView,没有ListView。
  • 将您的avd设置为可用的最低资源。这使得模拟器非常轻巧但功能齐全且可以快速使用。

所有这些结合起来节省了很多时间。