Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Работа с файловой системой


(tshcherbyna) #1

Добрый день!

Помогите решить следующую задачу:
необходимо сделать изменения в ui, после которых в определенную папку(сейчас локально, а вообще на сервере) должен прийти файлик.Необхожимо проверить его наличие, вытащить его, распарсить, проверить все ли правильно и удалить.
с ui частью понятно(использую selenium+java+TestNg) а вот дальше немного не понятно, как можно это реальзовать.

Спасибо за помощь!


(vmaximv) #2

http://docs.oracle.com/javase/tutorial/essential/io/file.html


(tshcherbyna) #3

благодарю за информацию!


(tshcherbyna) #4

например,я поняла как можно работать с файлом, т.е если мне надо пойти туда-то и посмотреть файл, то я могу использовать метод

public void getAuditFiles(String filePath, String valueName){
        File file  = new File(getProperty(filePathAudit),valueName);
        System.out.println("Exists?"+ file.exists());
 }

создала отдельный класс, где описываю эти функции…теперь не совсем понимаю, как соеденить это все с тестом, где я исполняю ui часть. Т.е делаю я это все в idea под test NG…

@Test
public void export_sales_order(){
    newSO.addItem("10060383814752 (UPC)");
    commonElements.clickSave();
   
    commonElements.clickEdit();
    commonElements.delete();
}

проверить файл необходимо между click.Save() и clickEdit()
спасибо


(vmaximv) #5

http://docs.oracle.com/javase/tutorial/java/javaOO/returnvalue.html
http://testng.org/javadoc/org/testng/Assert.html


(Александр Шиповалов) #6

Знаете, прежде чем просить кого то написать вместо вас работающий код - я бы предложил вам изучить хотя бы одну из двух книг:

  1. Классическая Философия Java
  2. Та, что помогла лично мне в понимании Изучаем Java, серия Head First

(tshcherbyna) #7

спасибо!
обязательно учту ваш совет!


(Sergey Shimkiv) #8

Вам никто не запрещает вызывать методы Ваших вспомогательных классов в теле тестовых методов.
Например, в методе getAuditFiles возвращайте Boolean, тогда в тесте:

commonElements.clickSave();
if(!getAuditFiles(...)) {
    //файл не найден
} else {...}
commonElements.clickEdit();

(или возвращайте ссылку на объект типа File если хотите продолжать выполнять действия с файлом)

Полностью поддерживаю комментарий по поводу изучения литературы по Java.

Что касается самого изначального топика, то работать с файловой системой достаточно просто. Даже в случае распределенной системы (где приложение, которое генерирует нужные файлы находится на одном сервере, а тесты запускаются на другом, а выполняются на нодах Grid’а), в этом случае можно воспользоваться утилитой sshfs, которая монтирует удаленную файловую систему в локальную и дальше уже работа ведеться как с локальной файловой системой.


(Александр Шиповалов) #9

Ну и вот из последнего дайжеста с этого форума
Как эффективно изучать Java