@Daria_D15
Junior QA Automation

Как в assertAll добавить условие, чтобы при сравнении двух map в отчет пошли только не совпавшие элементы?

В своем автотесте сравниваю две Мар, в отчете Allure результат нечитабельный, хочу это исправить, скрин приложу
Allure.step("Сравниваем ожидаемую и актуальную Map");

                softAsserts = new SoftAssertions();
                softAsserts.assertThat(menuCollection).isEqualTo(expected);


                Tabs_menu_page.clickMenu()
                        .clicklExit();

                Allure.step("Следующий permissionId" + permissionId);

            }
        }

        softAsserts.assertAll();

    }

66c458e74a872003025356.png
  • Вопрос задан
  • 41 просмотр
Решения вопроса 1
@Daria_D15 Автор вопроса
Junior QA Automation
Вопрос решился просто
for (String key : expected.keySet()) {
for (String key : expected.keySet()) {
                    if (menuCollection.get(key) != expected.get(key)) {
                        Allure.step("Ошибка", Status.FAILED);
                        Allure.getLifecycle().updateStep(testResult -> testResult.setStatus(Status.FAILED));
                        Allure.getLifecycle().stopStep();
                        if (!expected.get(key)) {
                            assert account != null;
                            Allure.step(" Вкладки " + key + " лишняя у permission  " + permissionId + " AccountId: " + account.getAccounId());
//                            softAsserts.fail(" Вкладки " + key + " лишняя у permission  " + Arrays.toString(permission_id) + " AccountId: " +  accountId);
                        } else {
                            assert account != null;
                            Allure.step(" Вкладки " + key + " не хватет у permission " + permissionId + " AccountId: " + account.getAccounId());
//                            softAsserts.fail(" Вкладки " + key + " не хватет у permission " + Arrays.toString(permission_id) + " AccountId: " +  accountId);
                        }
                    }
                }
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Arty_Fact
Собери новую мапу, которая будет разницей этих двух и проверь, что она не пустая.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы