我刚开始学习Robotium,我编写了一个测试用例,可以在我的应用程序中重置记录的统计信息。我想知道是否有一种方法可以自动创建统计信息,而无需在每次运行测试时手动创建它们。
由于
编辑:
我现在在运行第一个测试之前已将一些随机值添加到数据库中。但是,这会导致NullPointerException。
这是我用来创建一些统计数据的方法:
private void createStats() {
Context context = getInstrumentation().getTargetContext();
mDbAdapter = new PlayDbAdapter(context);
mDbAdapter.updateViews(8, 5);
mDbAdapter.updateViews(7, 3);
mDbAdapter.updatePrompts(7, 2);
mDbAdapter.updateCompletions(8, 1);
mDbAdapter.close();
}
在我进行第一次测试时调用此方法。 updateViews方法如下:
public boolean updateViews(long rowId, int views) {
ContentValues args = new ContentValues();
args.put(KEY_VIEWS, views);
return mDb.update(DB_TABLE, args, KEY_ROWID + "=" + rowId, null) > 0;
}
NullPointer发生在上述方法的return语句中。任何想法为什么会这样?
答案 0 :(得分:0)
我无法看到您的所有代码,但我猜您会收到此错误,因为您没有正确打开数据库。
如果不是这样,我需要查看更多代码才能了解最新情况。
答案 1 :(得分:0)
我发现了为什么我要获得NullPointer。我忘记在访问数据库之前打开我的适配器。这样一个愚蠢的错误!