Robotium - 在执行测试用例之前执行任务

时间:2013-02-04 15:41:15

标签: java android testing robotium

我刚开始学习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语句中。任何想法为什么会这样?

2 个答案:

答案 0 :(得分:0)

我无法看到您的所有代码,但我猜您会收到此错误,因为您没有正确打开数据库。

如果不是这样,我需要查看更多代码才能了解最新情况。

答案 1 :(得分:0)

我发现了为什么我要获得NullPointer。我忘记在访问数据库之前打开我的适配器。这样一个愚蠢的错误!