本文介紹了獲取io.appium.uiautomator2.common.exceptions.UiAutomator2Exception錯誤的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我為Android電視流媒體應用程序編寫自動化程序,運行測試時遇到問題。當我嘗試運行測試時,出現錯誤:
Org.Openqa.selenium.WebDriverException:處理命令時出現未知的服務器端錯誤。原始錯誤:com.onoapps.ome.dev前綴為io.appium.uiautomator2.common.exceptions.UiAutomator2Exception:的命名空間尚未聲明。
有人知道問題出在哪里嗎?
我正在使用:
小米MiBox。
Java
Appium
JUnit
這就是我想要做的。
public class RemoteControl extends AppiumBaseClass {
public RemoteControl(AppiumDriver driver) {
PageFactory.initElements(new AppiumFieldDecorator(driver), this);
}
@AndroidFindBy(xpath = "http://com.onoapps.some.dev:id/topRootId[@focusable='true']")
private MobileElement currentTab;
public String getCurrentTabName() {
MobileElement tabText = currentTab.findElement(By.id("com.onoapps.some.dev:id/topBarItemTextViewId"));
return tabText.getText();
}
}
public class SeriesScreenFlows extends BaseTestClass {
public void getSeriesTab(){
getCurrentTabName();
}
}
public class BaseTestClass extends AppiumBaseClass {
public WebDriverWait wait;
public Series_screen series_screen;
public RemoteControl remoteControl;
@Before
public void setUp() throws MalformedURLException {
AppiumController.instance.start();
series_screen = new Series_screen(driver());
remoteControl = new RemoteControl(driver());
}
}
推薦答案
當您找到MobileElementID時,您不需要包括應用程序包,因此請更改此行:
MobileElement tabText = currentTab.findElement(By.id("com.onoapps.some.dev:id/topBarItemTextViewId"));
至此
MobileElement tabText = currentTab.findElement(By.id("topBarItemTextViewId"));
您的測試應該會按預期開始工作。
或者,如果要使用XPath
MobileElement tabText = currentTab.findElement(By.xpath("http://*[@id='com.onoapps.some.dev:id/topBarItemTextViewId']"));
詳細信息:AS – Run your existing Appium tests
這篇關于獲取io.appium.uiautomator2.common.exceptions.UiAutomator2Exception錯誤的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,