4

我正在使用 Robolectric 开始单元测试。我有一个按钮,单击该按钮会向用户弹出一个确认对话框。当用户点击 时BUTTON_POSITIVE,一个新的活动被启动,点击 BUTTON_NEGATIVE,没有任何反应,用户停留在当前活动上。

对于 BUTTON_POSITIVE 用例,我能够通过以下方式进行测试:

    dialog.getButton(DialogInterface.BUTTON_POSITIVE).performClick();
    assertThat(currentActivity, new StartedMatcher(NextActivity.class));

对于 BUTTON_NEGATIVE 用例,我不确定要断言什么:

    dialog.getButton(DialogInterface.BUTTON_NEGATIVE).performClick();
    //What should I assert next to check I am still in currentActivity?
4

1 回答 1

4

我会尝试:

ShadowActivity shadowActivity = Robolectric.shadowOf( activity );
assertNull( shadowActivity.getNextStartedActivity() );
于 2013-02-20T06:47:13.623 回答