Каждый раз, когда я пишу excel, он перезаписывает весь файл пустым файлом – PUZZLED

То, что я пытаюсь сделать, это onTestFailure (TestNG). Я пытаюсь написать pass / fail для указанного столбца. В приведенном ниже коде я просто хотел сделать небольшой тест, чтобы написать Fail в указанную ячейку. Но то, что происходит, вместо того, чтобы писать пропуск / отказ в указанной ячейке, буквально перезаписывает весь файл и стирает все мои данные, и я озадачен тем, почему это происходит. Я смотрел здесь и искал, но не нашел ответа. Ниже приведен следующий код:

@Override public synchronized void onTestFailure(ITestResult tr){ try { Workbook workbook = Workbook.getWorkbook(new File(testData), workbookSettings); WritableWorkbook wb = Workbook.createWorkbook(new File(testData), workbook); WritableSheet ws = wb.getSheet("OrderEditQA3"); Label label = new Label(5,2, "Fail"); ws.addCell(label); wb.write(); } catch (IOException e) { e.printStackTrace(); } catch (BiffException b){ System.out.print("Error!"); } catch (WriteException we){ System.out.print(""); } } 

Любая помощь будет принята с благодарностью.

ОБНОВЛЕНО …

Ниже приведен еще один класс, который я использую для получения тестовых данных, возвращаемых в Dataprovider, и я также загружаю все мои элементы из указанного листа. Ниже приведен код

// Код для получения всех тестовых данных

 protected static Object[][] loadTestData(String sheetName)throws BiffException, IOException{ Sheet sheet = null; try{ sheet = getWorkBook().getSheet(sheetName); rowCount = sheet.getRows(); colCount = sheet.getColumns(); data = new String[rowCount -1][colCount-1]; int ci; int cj; ci=0; for(int i=1; i< rowCount; i++, ci++){ cj=0; for(int j=1; j< colCount; j++, cj++){ Cell cell = sheet.getCell(j,i); if(cell.getContents().isEmpty()){ continue;} System.out.print(cell.getContents() + "\n"); data[ci][cj] = cell.getContents(); } } }catch (IOException io){ System.out.print(String.format("File: %s not found!", testData)); } getWorkBook().close(); return data; } 

// Код для извлечения всех атрибутов элемента:

 @BeforeClass protected static List<String> loadElements()throws BiffException, IOException { Sheet sheet = null; sheet = getWorkBook().getSheet("Elements"); rowCount = sheet.getRows(); colCount = sheet.getColumns(); List<String> list = new ArrayList<>(rowCount); for (int i = 1; i < rowCount; i++) { for (int j = 0; j < colCount; j++) { Cell cell = sheet.getCell(j,i); if(cell.getContents().isEmpty()) {continue;} String cellContents = cell.getContents(); list.add(cellContents); System.out.print(cell.getContents() + "\n"); } } elements = list; getWorkBook().close(); return list; } 

Просто забыл, что надоедливый метод close ()

 @Override public synchronized void onTestFailure(ITestResult tr){ try { Workbook workbook = Workbook.getWorkbook(new File(testData), workbookSettings); WritableWorkbook wb = Workbook.createWorkbook(new File(testData), workbook); WritableSheet ws = wb.getSheet("OrderEditQA3"); Label label = new Label(5,2, "Fail"); ws.addCell(label); wb.write(); wb.close(); } catch (IOException e) { e.printStackTrace(); } catch (BiffException b){ System.out.print("Error!"); } catch (WriteException we){ System.out.print(""); } } 
  • Selenium Webdriver, TestNG - поставщик данных пытается передать параметр 2, но метод принимает 3, а TestNG не может вставить подходящий объект
  • Не удалось получить testdata из xls, при запуске тестов селена через файл «Исполняемый ящик»
  • Поставщик данных Testng (чтение из excel) не получает последнее значение, недавно обновленное другим классом
  • Передайте поставщика данных в провайдере данных
  • Как пропустить только один метод в Selenium
  • Как написать данные в Excel с помощью WebDriver с помощью Java с помощью платформы TestNg и Apache poi
  • Запись данных на Open excel sheet
  • Скрипт TestNG не может открыть Excel при запуске из .bat-файла
  • TestNG: как перезапустить тестовый пакет на основе количества строк в файле Excel
  • Решение NullPointerException в тестовом примере TestNG
  • Как перебирать лист excel с использованием testat-данных для набора данных?
  • Interesting Posts

    Excel с xml -> источником и руководством для тегов и атрибутов

    Первая ячейка не бланка слева

    Разделить строки, которые имеют многострочный текст и текст одной строки.

    Откройте файл .dmp Oracle из Excel 2007

    AddDataField удаляет поле из "Фильтр отчетов"

    VB-скрипт для работы для загрузки объектов из локального каталога с указанными именами в Range B

    Vlookup в VBA для работы с Numbers в другом формате

    Excel 2007 – Создать уникальный идентификатор на основе текста?

    Соответствие значений в двух столбцах и возвращаемое значение с помощью vlookup из третьего столбца в Excel

    Как отформатировать фэнтезийную валюту в Microsoft Excel?

    VBA Excel – Как автоматически добавить значение ячеек в пузырьковой диаграмме для нескольких серий?

    Выполните уравнение на основе цвета текста ячейки в Excel 2010

    Количество числа переменных в строке и сумме на основе определенных значений переменных, определенных в другой таблице

    Фильтры DataValidation Таблица

    Объединить ячейки, если другая ячейка имеет такое же значение

    Давайте будем гением компьютера.