#selenium #extentreports #selenium-extent-report
#selenium #extentreports #selenium-extent-report
Вопрос:
Я хочу добавить тестовые данные, используемые при выполнении тестового примера, в отчет о степени selenium. например, я использовал имя пользователя soni691 и пароль: 691990 в методе входа. Затем, если этот тестовый пример пройден, я хочу отобразить в отчете о степени, что это имя пользователя и pwd используется для входа на страницу.
Я хочу знать, возможно ли это?
Ответ №1:
В экземпляре ExtentTest вы можете вызвать метод info, который принимает любую строку. Помимо информации вы можете вызывать pass, fail, error и еще несколько. Используйте их для регистрации выполняемых шагов и утверждений.
Вы могли бы попробовать что-то вроде приведенного ниже.
ExtentReports extentReports = new ExtentReports();
ExtentTest test = extentReports.createTest("SomeName");
ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter("Test.html");//Constructor takes a path
extentReports.attachReporter(htmlReporter);
String user = "MyUser";
String pass = "MyPass";
test.info(String.format("username: %s; password: %s", user, pass));
reports.flush();
pom.xml зависимость:
<groupId>com.aventstack</groupId>
<artifactId>extentreports</artifactId>
<version>3.0.1</version>
РЕДАКТИРОВАТЬ: поскольку я пока не могу комментировать, я просто отредактирую ответ.
Источник данных не имеет значения, если вы можете сделать из него строку. Поскольку вы можете отправить имя пользователя и пароль, я полагаю, у вас уже есть они в какой-то переменной.
ПРАВКА2: я написал здесь неправильное имя переменной. Имел в виду не степень, а скорее extentReports, который я инициализировал строку ранее.
ПРАВКА3: добавлена очистка для завершения процесса создания целого отчета.
EDIT4: добавлена зависимость от Maven, чтобы было ясно, какая версия и номер версии используемого отчета об экстенте
EDIT5: добавлен репортер
Комментарии:
1. Еще одна вещь, которую я хочу добавить здесь, что я извлекаю тестовые данные из листа Excel. В этом случае это все равно будет работать?
2. ExtentTest test = extent.createTest(«SomeName»); в этом createTest указывается фактический метод, который вы имеете в виду? Я немного смущен. Как я пытался (extentTest.info (String.format(«имя пользователя: %s; пароль: %s», имя пользователя, пароль));) но он говорит: «Информация о методе (строка) не определена для типа ExtentTest»
3. Вы используете Java?
4. Да, я использую java с POM и data driven framework
5. Странно, я только что выполнил описанный выше поток, и он работает нормально. Я использую extentreports artifactId версии 3.0.1. Что касается метода createTest, он должен быть встроенным методом для класса ExtentReports