如何测试MVP中的仪器测试中开始的第二个活动?

时间:2016-12-24 05:49:03

标签: android android-intent mvp android-testing android-instrumentation

我是Android新手MVP。

我的问题与android中的Instrumentation测试有关。我使用intent在 var u = js.Deserialize<RootObject[]>(jr); Console.WriteLine(u[0].CommanderName); await x.Message.Parent.SendMessage(u[0].CommanderName); 中调用second_activity()。那么如何在使用espresso的仪器测试中测试是否调用main_activity()

我已经使用junit和mockito在单元测试中成功测试过。

1 个答案:

答案 0 :(得分:2)

我解决了。让我解释一下我做了什么。

第一步:将您的意图放入主要活动中的方法

public void gotoSecond() {

            Intent intent = new Intent(context, SecondActivity.class);
            startActivity(intent);
}

然后将此代码放在Instrumenation测试类文件中。

private MainActivity mTestActivity;

@Rule
public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule<>(
        MainActivity.class);

public MainActivityTest() {
    super(MainActivity.class);
}

@Override
protected void setUp() throws Exception {
    super.setUp();
    mTestActivity = getActivity();
}

@Test
public void testSecond(){
   //calling activity method using getActivity()
    mTestActivity.gotoSecond();
}

希望这能帮助有需要的人。