问题描述
我一直使用Appium测试一个混合的Android应用程序,包括本地和环境的WebView之间的频繁转换。这些网页视图使用阵营库开发的。
The problem I am facing is that using Appium I am not able to access the elements from these webview using any of the findElementsBy
method. The class name being only parameter visible to the UIAutomator on which we could really rely on is changed by React on every new build generated.
The chrome inspect provides the details of the webview in my application as :
<div class="_32f8NoUfyUtNSxo3w4Ptbp" data-reactid=".0.1.$=13:0.0.0">…</div>
Info : WebView.setWebContentsDebuggingEnabled(true)
is set in the app code.
Would appreciate any leads here as well.
Based on this link : https://github.com/facebook/react-native/issues/7135
The workaround for this problem : use both accessible and accessibleLabel on your views
DOC on accessiblity label: https://facebook.github.io/react-native/docs/accessibility.html#accessibilitylabel-ios-android
On my react native component :
<TextInput accessible={true} accessibilityLabel={'Tap Me'}></TextInput>
On my script Test :
mobileElement = find_Element(accessibilty_id, "Tap Me")
mobileElement.send_keys "hello world"
这篇关于访问使用Appium自动化元素做出反应的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!