У меня есть 3 поля автоматического предложения в CMS, и я пытаюсь получить значения в каждом из них, один за другим.
Список автоматического предложения появляется после ввода первых 2 букв связанного содержимого в текстовом поле, а затем явыберите любой контент из списка и нажмите Enter.Затем появляется второе текстовое поле автоматического предложения, и я делаю то же самое, что и 3-е поле автоматического предложения, появляется.
Эти 3 поля автоматического предложения являются обязательными, поэтому я не могу их пропустить.
[RelatedContent]
Вот код: я только что жестко запрограммировал получить значения в текстовых полях.Пожалуйста, предложите, если у вас есть какой-нибудь лучший способ сделать это.
Есть функции:
public static WebElement article_related_content(WebDriver driver) throws Exception
{
if (CommonActions.isElementPresent(driver, By.xpath("//input[@id='relatedContent']"))== true) {
element = driver.findElement(By.xpath("//input[@id='relatedContent']"));
} return element; }
//This is create to select 3 related contents
public static WebElement related_content_list(WebDriver driver) throws Exception {
List<WebElement> listIt = driver.findElements(By.xpath("//input[@class='ui-menu-item']"));
if (CommonActions.isElementPresent(driver, By.xpath("//input[@class='ui-menu-item']"))==true)
{
element = listIt.get(1); //to get the first value from the list
} return element;
}
вот реализация:
CreateArticlePage.article_related_content(driver).sendKeys("Google Kills Wave", Keys.DOWN);
CreateArticlePage.related_content_list(driver).click();
//CreateArticlePage.article_related_content(driver).sendKeys(Keys.ENTER);
WebDriverWait wait = new WebDriverWait(driver, 15);
Я пробовал многопути, но у меня не получилось.