Переключение языков
Как описывалось в начале, репорты могут быть собраны не только на языке по умолчанию — английском. Давайте посмотрим, как можно собрать отчёт на русском языке.
Для этого необходимо открыть файл allurium.properties и найти или добавить параметр localization со значением ru или russian.
Например:
localization=ru
step.detailing=2
highlighter.start=<
highlighter.end=>
retry.amount=30
retry.interval.ms=1000
Теперь запустим один из наших предыдущих примеров. Например, тест заполнения формы:
@Test
@Feature("Form")
@DisplayName("Filling the example form")
public void fillTheForm() {
URL imageUrl = this.getClass().getClassLoader().getResource("img/testicon.png");
UiSteps.openBrowser(formPageUrl);
formPage.fieldLogin().assertVisible();
formPage.fieldLogin().write("John");
formPage.fieldLogin().assertHasCssClass("form-control");
formPage.fieldLogin().assertCurrentValue("John");
formPage.fieldEmail().clearAndWrite("john.doe@gmail.com");
formPage.fieldEmail().assertCurrentValue("john.doe@gmail.com");
formPage.fieldPassword().write("Password12345!");
formPage.fieldRank().write("10");
formPage.fieldDate().clearAndWrite("11.11.2011");
formPage.fieldTelephone().write("199887688");
formPage.btnAnnualIncomeIncrement().clickAndHold(5000);
formPage.uploadAvatar().uploadFile(new File(imageUrl.getFile()));
formPage.radioBtnMale().click();
formPage.radioBtnMale().assertEnabled();
formPage.radioBtnFemale().assertDisabled();
formPage.ckbMorning().check();
formPage.ckbMorning().assertChecked();
formPage.ckbEvening().assertUnchecked();
formPage.ddExperience().select("2 years");
formPage.ddExperience().assertCurrentValue("2");
formPage.selectWorkingDays().select("Monday");
formPage.selectWorkingDays().select("Friday");
}
Запустив тест, вы увидите, что в отчёте все шаги (за исключением названий, заданных через @Name), будут отображаться на русском языке. Конечно, полную русификацию можно добиться, указав значения в @Name на нужном языке.
Из-за особенностей языков (например, богатого набора приставок, суффиксов и окончаний) описания могут звучать не идеально, но в большинстве случаев они остаются приемлемыми.
На данный момент общие шаги в классах "UiSteps" и "BrowserSteps" не переводятся и будут на английском. Это может быть доработано в будующем.