java 在Android测试中如何使用espresso-intents的示例
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 在Android测试中如何使用espresso-intents的示例相关的知识,希望对你有一定的参考价值。
package com.collectiveidea.example;
import android.content.Intent;
import android.support.test.espresso.intent.Intents;
import android.support.test.rule.ActivityTestRule;
import android.support.test.runner.AndroidJUnit4;
import com.collectiveidea.example.ui.LoginActivity;
import com.collectiveidea.example.ui.MainActivity;
import com.collectiveidea.example.util.AccountUtility;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import static android.support.test.espresso.intent.Intents.intended;
import static android.support.test.espresso.intent.Intents.times;
import static android.support.test.espresso.intent.matcher.IntentMatchers.hasComponent;
@RunWith(AndroidJUnit4.class)
public class MainActivityTest {
@Rule
public final ActivityTestRule<MainActivity> rule =
new ActivityTestRule<>(MainActivity.class, true, false);
@Test
public void testWhenThereInNoExistingAccount_LaunchesLoginActivity() throws Exception {
Intents.init();
AccountUtility.removeAccounts();
rule.launchActivity(new Intent());
intended(hasComponent(LoginActivity.class.getName()));
Intents.release();
}
@Test
public void testWhenThereIsAnExistingAccount_DoesNotLaunchLoginActivity() throws Exception {
Intents.init();
AccountUtility.addAccount("email@example.com", "TOKEN");
rule.launchActivity(new Intent());
intended(hasComponent(MainActivity.class.getName()));
intended(hasComponent(LoginActivity.class.getName()), times(0));
Intents.release();
}
}
以上是关于java 在Android测试中如何使用espresso-intents的示例的主要内容,如果未能解决你的问题,请参考以下文章
Android Espresso 测试 withHint 不起作用
UI集成测试运行说明
UI集成测试运行说明
Espresso Android,点击 WebView 元素错误
Android 手机自动化测试工具有哪几种
java 在Android测试中如何使用espresso-intents的示例