我的应用程序主要是与服务器通信以获取大部分信息的 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 视图,我期望发现什么?我必须以一种过于有限的方式思考这个问题
所以,洞察力赞赏