例外:使用Appium中的给定搜索参数无法在页面上找到元素

时间:2016-08-19 14:29:07

标签: appium browserstack

尝试在Browserstack-cloud中自动执行iPad模拟器上的测试。我尝试过的许多定位策略都有以下例外:

  

例外:使用给定的搜索参数

无法在页面上找到元素

因为我尝试了很多变体,我很确定,我的错误是一般的错误 - 但我无法找到它。我的C#代码:

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.SetCapability("device", "iPad Air 2");
capabilities.SetCapability("browserstack.user", browserStackUser);
capabilities.SetCapability("browserstack.key", browserStackKey);
capabilities.SetCapability("name", "ios - actions");

Uri serverUri = new Uri("http://hub.browserstack.com/wd/hub/");
AppiumDriver<IWebElement> driver = new IOSDriver<IWebElement>(serverUri, capabilities, new TimeSpan(1000000000000));
driver.Navigate().GoToUrl("http://www.amazon.de");
driver.Context = "NATIVE_APP";
Thread.Sleep(20000);
IWebElement anyElement = driver.FindElementByName("field-keywords");

这种方法的一般错误是什么?

这是我尝试找到的元素: amazon appium example

1 个答案:

答案 0 :(得分:1)

请您发布截图,以便我可以为您提供位置策略。此外,您可以使用get API代替GoToUrl。以下代码在java中。

driver.get(""http://www.amazon.de");
WebDriverWait wait = new WebDriverWait(driver, 30);
wait.until(ExpectedConditions.presenceOfElementLocated(BY-LOCATOR-STRATEGY-HERE)); //wait for page to load before finding any element
WebElement element = driver.findElement(BY-LOCATOR-STRATEGY-HERE);