尝试在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");
这种方法的一般错误是什么?
答案 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);