我的Android UI测试没有ID

G.S*_*ier 13 android ui-testing android-espresso react-native

我想在我的Android应用程序上编写一些UI测试,以便获取自动截图.

我的应用程序是用React-Native编写的.

为了编写我需要知道我的组件的资源ID的测试,但是你可以在这个截图中看到我在这个React-Native示例应用程序中看不到ui Automator Viewer的任何资源ID.

看这张照片.

我想知道是否有办法给我的组件提供一些ID,这样我就可以编写一些测试,或者是否有另一种方法可以选择我的组件.

注意:我正在尝试编写Espresso Test.

小智 9

testIDiOS上唯一的作品,并没有映射到Android中的资源ID.

您可以accessibilityLabel为组件指定一个.在uiautomatorviewer中它显示为content-desc

要跨平台,您应该同时指定:

<Text style={styles.welcome} accessibilityLabel="MyId" testID="MyId">
  Welcome!
</Text>
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用带有波形符选择器的 webdriver等搜索它 browser.waitForExist("~MyId")


dam*_*net -1

就在这里!您可以将testIDprop 传递给任何实现该<View />props 的组件,如此处所述

测试ID字符串

用于在端到端测试中定位此视图。

另请参阅这篇关于 React Native 中的 UITesting 的信息丰富的博文。这是关于 iOS 测试的,但 javascript 部分对于 Android 来说是相同的。