菜鸟教程小白 发表于 2022-12-12 13:39:47

ios - 如何获取元素句柄以使用 Appium 测试我的 Cordova 应用程序?


                                            <p><p>我正在尝试在 Appium 中测试我们的 Cordova 应用程序。我正在使用 <a href="https://github.com/admc/wd" rel="noreferrer noopener nofollow">node wd</a>界面。当我在 Appium Inspector 中查看元素时,它们似乎没有任何我可以使用的标识符。例如,我在用于登录的电子邮件文本输入中看到以下内容:</p>

<p> <img src="/image/RaLHAm.png" alt="Appium Inspector view of text element"/> </p>

<p>我在 HTML 中为此元素设置了各种内容,例如 <code>id</code>、<code>name</code> 等(它还有一个使用 <code> 的标签for</code> 指向输入的属性。)但它似乎没有任何我可以寻找的东西。所以我最终寻找具有 <em>value</em> 的电子邮件的 <code>UIATextField</code> 元素。这是不可取的,因为我没有一致的方式来查找输入。例如,如果我更改输入的值,我需要通过新输入查找元素。</p>

<p>所以我的问题是:如何从 Cordova 的 HTML 中为该元素设置可访问性标识符或任何句柄?我什至会采用我可以查询的 <code>data-*</code> 属性。还是我做错了?</p>

<p>我询问了可访问性标识符,因为我在其他地方读过 <a href="https://stackoverflow.com/questions/25915967/how-to-make-appium-tests-run-faster-on-ios/25916190#25916190" rel="noreferrer noopener nofollow">I should not use XPath selectors</a>对于 Appium 测试,但我看不出为什么会出现这种情况(它似乎对我有用。)</p>

<p>感谢您的帮助!</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您是否尝试过更改上下文? <a href="https://stackoverflow.com/a/24878765/31252" rel="noreferrer noopener nofollow">https://stackoverflow.com/a/24878765/31252</a> .目前您正在处理 UIAutomation 层,它是原生 iOS 并且对您的 HTML 一无所知,但我希望当您切换到 webview 上下文时,您应该能够看到您的标识符。 </p>

<p>更改上下文在 webviews(android 和 iOS)中确实有效,但我不确定这将如何影响cordova 呈现的页面</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何获取元素句柄以使用 Appium 测试我的 Cordova 应用程序?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/27865854/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/27865854/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何获取元素句柄以使用 Appium 测试我的 Cordova 应用程序?