Перейти к содержимому

Фотография

Selenium Webdriver запись в файл

Selenium webdriver junit тестирование

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#1 Poschev38

Poschev38

    Новый участник

  • Members
  • Pip
  • 6 сообщений
  • ФИО:Николай

Отправлено 15 марта 2017 - 18:56

Здравствуйте) Подскажите, пожалуйста, я начинающий тестировщик и у меня возник вот такой вопрос:
Мне нужно написать сценарий, который будет автоматически записывать всю информацию из тестируемого каталога сайта в текстовый документ. Не понятно как это реализовать:( За ранее благодарю
Использую в работе selenium webdriver и junit. 


  • 0

#2 Freiman

Freiman

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 591 сообщений
  • ФИО:Андрей Адеркин
  • Город:Йошкар-Ола

Отправлено 16 марта 2017 - 07:21

Вебдрайвер тут нужен только для получения данных с сайта. Для записи в файл необходимо использовать стандартные средства языка.

 

То, что нагуглолось про Java:

https://metanit.com/...utorial/6.8.php

http://javatalks.ru/topics/48243

http://beginnersbook...bufferedwriter/

https://www.mkyong.c...writer-example/


  • 0

#3 Poschev38

Poschev38

    Новый участник

  • Members
  • Pip
  • 6 сообщений
  • ФИО:Николай

Отправлено 21 марта 2017 - 19:30

Вебдрайвер тут нужен только для получения данных с сайта. Для записи в файл необходимо использовать стандартные средства языка.

 

То, что нагуглолось про Java:

https://metanit.com/...utorial/6.8.php

http://javatalks.ru/topics/48243

http://beginnersbook...bufferedwriter/

https://www.mkyong.c...writer-example/

Большое спасибо, вроде разобрался) Только вот ещё один вопрос появился: В файл выводится текст из элемента, но он отображается вот в таком виде h63OoYcFvHQ.jpg
Можно ли это исправить? вот код:
Сначала прогоняется тест, с помощью цикла выводиться в консоль текст в нормальном виде(построчно). Затем создал метод, который обрабатывает веб элемент и записывает его в файл. В программировании имею мало опыта, поэтому трудновато пока всё это даётся
 

@Test

 

    public void test(){ 
WebElement catalog = selenium.findElement(By.cssSelector("div#content"));
    catalog = metod(catalog);
    List<WebElement> list = catalog.findElements(By.cssSelector(".trimmed-text"));
    for (WebElement foods : list) {
    System.out.println(String.format("Блюдо: %s", foods.getText()));
        foods.click();
    }
    }
   
    @After
    public void tearDown() throws Exception {
       selenium.quit();
    }
   
    private static WebElement metod(WebElement foods ){
    PrintWriter zzz = null;
         try
         {
             zzz = new PrintWriter(new FileOutputStream("my_test_file2.txt"));
         }
         catch(FileNotFoundException e)
         {
             System.out.println("Ошибка открытия файла my_test_file2.txt");
             System.exit(0);
         }
          zzz.println(String.format("Блюдо: %s", foods.getText()));
          zzz.close();
          System.out.println("Программа завершена");
         return foods;
     }
}

  • 0

#4 Freiman

Freiman

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 591 сообщений
  • ФИО:Андрей Адеркин
  • Город:Йошкар-Ола

Отправлено 21 марта 2017 - 20:54

Проблема в том, что вы именно так и делаете - берете весь текст и засовываете в одну строку. Разумеется, там переводов строки нет. А потом вы одну строку записываете в файл.
А вот выводите в консоль другим способом :)

Для начала предлагаю избавиться от лишнего кода.
Затем понять, как работает оставшийся.
А затем переписать все с нуля :)
  • 0

#5 Spock

Spock

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 772 сообщений
  • ФИО:Роман

Отправлено 22 марта 2017 - 12:54

предлагаю сначала понять зачем это всё надо, ну и формат файла тоже

 

очень необычная цель: "зайти на сайт, открыть меню и сохранить это меню в текстовый файл"


  • 0



Темы с аналогичным тегами Selenium webdriver, junit, тестирование

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных