是否可以在Android应用中启动测试(AndroidJUnit4)?例如,我有这个测试,我想在我的应用程序中添加一个按钮来运行此测试。要提到的是,这段代码将测试另一个应用程序(即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)
不,如果您从应用中运行它,它将无法获得所需的权限。您必须从adb
开始进行检测测试。
想象一下,恶意应用程序是否可以对其他应用程序执行此操作...