gpt4 book ai didi

android - 如何在 React Native 中同时设置 testID 和 accessibilityLabel?

转载 作者:行者123 更新时间:2023-12-04 23:53:07 24 4
gpt4 key购买 nike

我在为我的 React Native 应用程序设置 testID 和 accessibilityLabel 时遇到了一个奇怪的问题,这样做的目的是让 Appium Inspector(Appium 桌面)在 iOS 和 Android 应用程序上看到“可访问性 id”,问题如下:

  • 如果 testID 与accessibilityLabel 一起设置,iOS 应用程序不会在组件中显示“accessibility id”,但android 应用程序会显示。
  • 如果我只设置 testID,iOS 应用程序会正确显示组件中的“辅助功能 ID”,但对于 android,组件中的“辅助功能 ID”会丢失。
  • 如果我只设置了accessibilityLabel,Android 应用程序会正确显示“辅助功能ID”,但iOS 应用程序会丢失。

  • 这是我的代码
    export enum TestID {
    ImageLogo = 'ImageLogo'
    }

    export const LogoComponent: React.FC = () => {
    return (
    <Image
    testID={TestID.ImageLogo}
    accessibilityLabel={TestID.ImageLogo}
    />
    );
    };
    另外,我尝试将可访问属性设置为 false/true,但没有成功
    我使用的 React Native 版本如下:
    "react": "16.13.1",
    "react-native": "0.63.2",

    最佳答案

    升级到 React Native 0.64 - 它对 testID 有适当的支持在安卓上。请注意,因为 testID在 Android 上映射到 resource-id在 View 中,Appium 要求您的 testID 以资源 ID 的规范样式格式化:<package>:id/<identifier> .
    在我们的应用程序中,我们对测试 ID 执行以下操作:

    <Text testID="test:id/hello-text">Hello</Text>
    如果您使用 wd库与 appium 交谈,然后您可以执行以下操作:
    await driver.elementById("test:id/hello-text")

    关于android - 如何在 React Native 中同时设置 testID 和 accessibilityLabel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64706072/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com