1

作为我们 android 应用程序测试的一部分,我们需要访问 ActionBar 上的导航按钮。我在 uiautomater 或 adb 文档中没有找到任何建议访问它的方法。

4

6 回答 6

1

如果您不介意使用第三方库,您可以尝试使用 Robotium 来解决这个问题以及更多其他问题。当我测试这个时,我使用solo.clickOnImage(0);. 这是我测试该按钮的可靠方法。此外,如果您想确保将您带到正确的屏幕,您可以使用solo.waitForActivity(MyActivity.class,1000);.

于 2013-12-13T20:32:19.023 回答
0

尝试通过 cmd 使用“uiautomatorviewer”选项,并确定您是否可以在操作栏中查看您想要访问的该对象的任何文本或描述。

于 2013-12-15T16:36:02.100 回答
0

我的英语不好理解你的问题,但是对于 actionBar

据我了解, android:showAsAction属性决定了它应该如何在ActionBar中显示

于 2013-12-13T19:49:28.010 回答
0

如果您的测试类是从 InstrumentationTestCase 派生的,您可以按这种方式按下导航按钮

getInstrumentation().invokeMenuActionSync(activity, android.R.id.home, 0);
于 2013-12-13T21:20:31.433 回答
0
import androidx.test.uiautomator.Until.findObject
import com.name.app.BuildConfig.APPLICATION_ID

private val device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())

        val logout = device.wait(findObject(By.res(APPLICATION_ID, "logout")), 500)
        logout.click()
于 2018-08-07T21:57:58.517 回答
0

您可以使用

   mDevice = UiDevice.getInstance(getInstrumentation());
   UiObject ActivateButton = mDevice.findObject(new UiSelector()
            .text("Activate"));     // Replace with the text on ur Action Button
   if(ActivateButton.exists())
        ActivateButton.click();
于 2015-12-04T21:32:52.363 回答