我的应用程序大多数是GUI,它们与服务器通信以获取大部分信息。如果出了什么问题,通常会在网络调用或错误假设JSON对象方面出现。
单元测试对于这些与网络相关和I/O相关的任务不适用,否则它们将不能被称为单元测试。
因此,我正在尝试了解在我的情况下单元测试的要点。为什么要测试Android按钮是否可以点击或EditText是否能够查看我输入的内容?我只是不理解实施这些繁琐测试的效用。
private void initElements(){
placeButton = (Button) findViewById(R.id.currplace);
placeButton.setText(MainActivity.this.getString(R.string.findingLocation));
placeButton.setEnabled(false);
selectplaceLayout = (LinearLayout)findViewById(R.id.selectplaceLayout);
selectplaceLayout.setVisibility(View.GONE);
splash = (RelativeLayout)findViewById(R.id.splashbg);
infoLayout = (LinearLayout)findViewById(R.id.infoLayout);
}
如果我使用上述方法,在onCreate中运行所有活动,那么我就知道这个应用程序可以工作。对此进行单元测试是多余的耗时事情。因为我不熟悉jUnit和Android测试框架中的所有方法,所以这会很耗时。
那么,长话短说,重点是什么?我应该如何考虑这些测试?到目前为止,我看到的所有示例和教程都只讨论最简单的例子,出于简洁的考虑,但我无法想到在主要是客户端-服务器应用程序中使用单元测试的任何实际用途。
通过访问我已经知道声明和初始化的Android视图,我预计会发现什么?我一定是从一个过于有限的角度来思考这个问题了
所以,欢迎提供见解