不能';不能在Appium+;Robot框架,其中Appium将其显示的错误消息记录为contextId:';多重:真';
使用机器人框架,结合Appium和Selenium2库/SeleniumLibrary。如果我尝试使用一些xpath定位器运行脚本,如下所示不能';不能在Appium+;Robot框架,其中Appium将其显示的错误消息记录为contextId:';多重:真';,appium,robotframework,appium-android,selenium2library,Appium,Robotframework,Appium Android,Selenium2library,使用机器人框架,结合Appium和Selenium2库/SeleniumLibrary。如果我尝试使用一些xpath定位器运行脚本,如下所示 AppiumLibrary.Click Element xpath=//android.widget.TextView[@text='Site Control'] 在关键字文件中,然后获取下面的错误消息 错误消息: Finding '//android.widget.EditText[@index='4']
AppiumLibrary.Click Element xpath=//android.widget.TextView[@text='Site Control']
在关键字文件中,然后获取下面的错误消息
错误消息:
Finding '//android.widget.EditText[@index='4']' using 'XPATH' with the contextId: '' multiple: true
Appium日志:
[debug] [35m[AndroidBootstrap][39m [BOOTSTRAP LOG] [debug] Got command of type ACTION
[debug] [35m[AndroidBootstrap][39m [BOOTSTRAP LOG] [debug] Got command action: find
[debug] [35m[AndroidBootstrap][39m [BOOTSTRAP LOG] [debug] Finding '//android.widget.EditText[@index='4']' using 'XPATH' with the contextId: '' multiple: true
机器人脚本:
Click on Site Control and Create Case
AppiumLibrary.Click Element xpath=//android.widget.TextView[@text='Site Control']
sleep ${timeout}
AppiumLibrary.click element xpath=//android.widget.EditText[@index='4']
sleep ${timeout}
AppiumLibrary.input text xpath=//android.widget.EditText[@text='Intallationid'] site212
这意味着你的定位器不是唯一的。请尝试添加更多独特的属性,如//android.widget.EditText[@index='4'和@attribute='value']最后,找到了此错误消息的答案。问题是,开发团队正在其React本机代码中维护UI元素的通用变量名,以重用它,为了克服此错误,添加UiAutomator2功能,如下所示: 适用于带Appium的Java(Appium Java客户端) 用于机器人框架(机器人应用程序库)
为什么会出现这个错误?如果我们的设备/仿真器操作系统版本>=6,则Appium不支持UiAutomator自动化。我用的是7+。因此,我必须切换到UiAutomator2,并确保JAVA\u HOME和ANDROID\u HOME设置正确。定位器只工作一次,第二次执行。多个:在Appium日志中显示True错误,并暂停自动化,直到手动停止我尝试了所有abs和相关xpath组合
capabilities.setCapability("automationName", "UiAutomator2");
automationName=UiAutomator2 (inside open application keyword)