Огневые испытания из приложения для Android

Можно ли запускать тесты (AndroidJUnit4) в приложении для Android? Например, у меня есть этот тест, и я хотел бы добавить в свое приложение кнопку, которая запускала бы этот тест. Следует отметить, что этот фрагмент кода будет тестировать другое приложение (например, Chrome).

В настоящее время этот тест работает, если я запускаю его из Android Studio, но будет потрясающим, если он может запускаться из приложения.

@RunWith(AndroidJUnit4.class)
@SdkSuppress(minSdkVersion = 18)
public class ExampleInstrumentedTest {
    private static final String TAG = "@@MyClassNameHere@@";
    private static final long DEFAULT_TIMEOUT = 1000;
    private UiDevice mDevice;

    @Before
    public void setUp() {
        // Initialize UiDevice instance
        final Instrumentation instrumentation = InstrumentationRegistry.getInstrumentation();
        mDevice = UiDevice.getInstance(instrumentation);
    }

    @Test
    public void culebraGeneratedTest() throws Exception {
        mDevice.pressHome();
        mDevice.click(559, 1708);
        mDevice.findObject(By.res("net.oneplus.launcher:id/all_apps_handle").clazz("android.widget.ImageView").text(Pattern.compile("")).pkg("net.oneplus.launcher")).clickAndWait(Until.newWindow(), DEFAULT_TIMEOUT);
        (new UiScrollable(new UiSelector().className("android.support.v7.widget.RecyclerView").resourceId("net.oneplus.launcher:id/apps_list_view").index(2).packageName("net.oneplus.launcher"))).getChildByDescription(new UiSelector().description("Chrome"), "Chrome", true).click();


        mDevice.swipe(500,1300,500,400,50);
        mDevice.waitForIdle(1000);
    }

}
0
0
25
1

Ответы 1

Нет, он не получит необходимых разрешений, если вы запустите его из приложения. Вы должны начать тестирование аппаратуры с adb.

Представьте, если бы злонамеренные приложения могли делать то же самое с другими приложениями ...

Другие вопросы по теме