Мне нужно написать тест junit для существующих java программ, который генерирует Apache POI XSSF Workbook. И я понятия не имею, как написать тест junit для методов, которые вы видите. Может кто-то мне помочь, пожалуйста. Это WBgenerator.
public void generateWorkbook() throws IOException {
RowsAndCellsCourse rowsAndCellsCourse = new RowsAndCellsCourse();
RowsAndCellsAttendance rowsAndCellsAttendance = new RowsAndCellsAttendance();
Workbook workbook = new XSSFWorkbook();
CreationHelper createHelper = workbook.getCreationHelper();
Sheet sheetAttendance = workbook.createSheet("Course");
Sheet sheetCourse = workbook.createSheet("Lesson");
//Adding borders
CellStyle style = workbook.createCellStyle();
//Generate rows on 1 sheet, participants info
rowsAndCellsAttendance.generateFirstRow(sheetAttendance, style);
rowsAndCellsAttendance.generateSecondRow(sheetAttendance, style);
//Generate rows on 2 sheet, lesson info
rowsAndCellsCourse.generateFirstRowSheet2(sheetCourse, style);
rowsAndCellsCourse.generateRowsSheet2(sheetCourse, style);
for (Sheet sheet : workbook) {
for (Row row : sheet) {
for (Cell cell : row) {
style.setBorderBottom(BorderStyle.THIN);
style.setBottomBorderColor(IndexedColors.BLACK.getIndex());
style.setBorderLeft(BorderStyle.THIN);
style.setLeftBorderColor(IndexedColors.BLACK.getIndex());
style.setBorderRight(BorderStyle.THIN);
style.setRightBorderColor(IndexedColors.BLACK.getIndex());
style.setBorderTop(BorderStyle.THIN);
style.setTopBorderColor(IndexedColors.BLACK.getIndex());
cell.setCellStyle(style);
}
}
}
//Saving
saveWorkbook(workbook);
}
public void saveWorkbook(Workbook workbook) throws IOException {
try (OutputStream fileOut = new FileOutputStream("workbook.xlsx")) {
workbook.write(fileOut);
}
}
} Здесь вы можете увидеть программы, которые генерируют книгу, где есть методы, которые генерируют строки и ячейки. Я попытался написать тесты junit для обоих методов, но это не сработало.
А это генератор строк и ячеек
public class RowsAndCellsAttendance {
Participant participant = new Participant();
public void generateFirstRow(Sheet sheet, CellStyle style) {
Row row = sheet.createRow(0);
row.createCell(0).setCellValue("Name");
row.createCell(1).setCellValue("Mobile phone");
row.createCell(2).setCellValue("E-mail");
}
public void generateSecondRow(Sheet sheet, CellStyle style) {
for (Integer rowNum = 1; rowNum < 3; rowNum++) {
Row row2 = sheet.createRow(rowNum);
row2.createCell(0).
setCellValue(participant.setName("") + ", "
+ participant.setSurname(""));
row2.createCell(1).
setCellValue(participant.setMobile(""));
row2.createCell(2).
setCellValue(participant.setEmail(""));
}
}
}
PS I новое в java, если вы заметите какие-либо ошибки, просмотрите