Добрый день,
Возможно ли игнорировать параметр в репорте Allure? Что бы не отображался пароль (pwd) от юзера к сайту.
Добрый день,
Возможно ли игнорировать параметр в репорте Allure? Что бы не отображался пароль (pwd) от юзера к сайту.
Переходи на C#, там это есть
не передавай его, а ищи в таблице какой-нибудь по имени
Находясь в нужном шаге выполнить
getLifecycle().updateStep(step-> step.getParameters().remove(1));
getParameters() лист со всеми параметрами, изменения в нём будут отражены в репорте.
Тут же можно и добавить другие параметры если нужно.
да захешируй его если так хочется 256 + соль
а в методе используй утилитку для декода
и пускай все смотрять все на 21weasdsacOKKalkmsdmna29juna
@Data
public class SensibleText {
private final String text;
@Override
public String toString() {
if (text == null) {
return "";
}
return "*".repeat(text.length());
}
}
@Data
public class User {
private static final String USER_NAME_PROPERTY = "user.username";
private static final String USER_PASSWORD_PROPERTY = "user.password";
private final String username;
private final SensibleText password;
public static User getUser() {
String username = PropertiesReader.getProperty(USER_NAME_PROPERTY);
String password = PropertiesReader.getProperty(USER_PASSWORD_PROPERTY);
return new User(username, new SensibleText(password));
}
}
@Step("Sign in with '{user}'")
public HomePage signIn(User user) {
setText(usernameInput, user.getUsername());
setSensibleText(passwordInput, user.getPassword());
click(signInButton);
return new HomePage();
}
@Step("Set sensible text '{sensibleText}' into element '{locator.name}'")
protected void setSensibleText(Locatable locator, SensibleText sensibleText) {
$(locator.getBy()).setValue(sensibleText.getText());
}
Всем спасибо за ответы!
В Selenide есть встроенный метод для скрытия чувствительной информации с версии 6.5.0
$("#password").setValue(withText("admin").sensitive());
// заменяет на звёздочки
$("#username").setValue(withText("john").withDisplayedText("J* username"));
// заменяет на "J* username"