【发布时间】:2011-07-16 04:45:56
【问题描述】:
我是 Android 开发以及测试驱动开发的新手。我想为以下 ListActivity 编写单元测试:
public class TrendsMainActivity extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
String[] list_items = getResources().getStringArray(R.array.trend_menu_names);
setListAdapter(new ArrayAdapter<String>(this, R.layout.main, list_items));
}
@Override
protected void onListItemClick(ListView listView, View view, int position, long id)
{
Intent intent = null;
switch(position)
{
case 0:
intent = new Intent(this, TrendingActivity.class);
break;
case 1:
intent = new Intent(this, SearchActivity.class);
break;
case 2:
intent = new Intent(this, TimelineActivity.class);
break;
}
if(intent != null)
{
startActivity(intent);
}
else
{
Log.e(getClass().getSimpleName(), "There was an error retrieving request.");
}
}}
我已经搜索了所有我能找到的文档,但我不知道如何测试这个 Activity。 onListItemClick 方法还没有完成,但它给出了我想要完成的想法。我想测试单击 ListView 中的第一项,并测试是否正在启动正确的 Activity。
我怎样才能做到这一点?
编辑:我希望我的测试“点击”ListView 中的一个项目。然后我想断言启动的活动是正确的活动(例如,单击 ListView 项目 0 专门启动 TrendingActivity)
【问题讨论】:
-
“测试此活动”是什么意思?运行包含列表的应用程序?还是测试代码?
-
我想对代码进行单元测试。
标签: java android unit-testing