Указать рандомное имя для файла
Учусь писать автотесты на java. В данном случае я хочу вводить данные в поля регистрации, намеренно ошибаюсь и делаю скриншот ошибки с сайта. Когда я регистрирую 1 человека - все ок. Но сейчас, я использую @DataProvider для регистрации нескольких пользователей. И теперь, каждый раз скриншот перезаписывает старый. Вопрос собственно в том, как сделать имя файла рандомным или привязанным к времени. Для того, чтобы сделать скрин использую такой вариант кода
TakesScreenshot ts = (TakesScreenshot)driver;
File scrFile = ts.getScreenshotAs(OutputType.FILE);
File desFile = new File( "./Screenshot/.png");
FileUtils.copyFile(scrFile,desFile);
Ответы (1 шт):
Автор решения: Fleckinger
→ Ссылка
- Использовать UUID для генерации случайного имени.
String filename = UUID.randomUUID().toString();
File file = new File("./Screenshot/" + filename + ".png");
- Проверить существует ли файл с таким именем в директории.
if (file.exists());
- Если файл существует, повторить шаг 1 пока не сгенерируется уникальное имя.
Альтернативный вариант, использовать
Calendar.getInstance().getTimeInMillis();
по аналогичной схеме с проверкой существования файла.