У меня странное значение ArrayList - PullRequest
0 голосов
/ 09 июля 2020
  1. Пожалуйста, просмотрите приведенный ниже код при выполнении кода ниже. Я получаю странный ArrayList

     List<WebElement> optionsFromUi = driver.findElements(By.xpath(prop.getProperty("optionvalue")));
     List<String> uiOptions = new ArrayList<String>();
     for (WebElement optionsUi : optionsFromUi) {
         System.out.println("3");
         uiOptions.add(optionsUi.getText());
    
     }
     System.out.println("uiOptions  from UI..........  =  " + uiOptions);
     System.out.println("Size of list = " + uiOptions.size());
     List<String> strTest = new ArrayList<String>();
     for(int i=0;i<=uiOptions.size()-1;i++){
         String str =  uiOptions.get(i);
         strTest.add(str);
     }
     System.out.println("strTest  --------------------"+strTest);
    
  2. Я ожидаю, что ArrayList будет ниже как результат

    strTest = [Like Equals Between, Equals Like, Like Equals In, Equals]
    
  3. Но я получаю ниже ArrayList в качестве вывода

     strTest = [Like
                Equals
                Between, Equals
                Like, Like
                Equals
                In, Equals]
    

1 Ответ

1 голос
/ 10 июля 2020

Вы должны использовать Selenium? Затем optionsUi.getText() возвращает именно то, что строка отображается на странице, включая разрывы строк. Чтобы печатать так, как вы ожидаете, просто удалите разрывы строк при добавлении текста в список.

String str =  uiOptions.get(i).replace("\n", "").replace("\r", "");
...