【问题标题】:How to write a locator using resource-id in appium如何在 appium 中使用资源 ID 编写定位器
【发布时间】:2020-11-18 12:26:23
【问题描述】:
@AndroidFindBy(id="com.com-uat:/id")
private MobileElement id;

这里我的资源 id 有一个 packageName,但是我的 packageName 会根据环境而变化 前Uat- com.com-uatprod- com.com.prod

现在我该如何让它动态化。

【问题讨论】:

    标签: automation appium android-uiautomator


    【解决方案1】:

    注解中有no way动态生成字符串。

    我检查了 AndroidFindBy 注释,但没有找到一种简单的方法来扩展它,使其支持基于 env 的不同值。

    但通常你不需要在值中传递包名,id 就足够了:

    @AndroidFindBy(id="nome_button")
    private MobileElement homeButton;
    

    应该像定义它一样工作

    @AndroidFindBy(id="com.com-uat:id/home_button")
    private MobileElement homeButton;
    

    当它是Android原生元素时,你需要提供包,但在这种情况下,UAT和PROD是一样的:

    @FindBy(id = "android:id/text1")
    private WebElement textView;
    

    【讨论】:

    • 谢谢你的回答,它真的帮助了我。我学到了一些新东西
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-11-27
    • 2021-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-05
    • 2018-07-13
    相关资源
    最近更新 更多