来自Android App的防火测试

时间:2018-04-20 16:15:07

标签: android testing uiautomator

是否可以在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);
    }

}

1 个答案:

答案 0 :(得分:0)

不,如果您从应用中运行它,它将无法获得所需的权限。您必须从adb开始进行检测测试。

想象一下,恶意应用程序是否可以对其他应用程序执行此操作...