Создание пользователя и логин лучше для каждого теста делать в Before, а не в общем AbstractTest, тк мы можем захотеть написать тест, где не нужна сессия, например, на регистрацию
Один тест - один класс (Не считая @ Nested, где кстати можно сделать Before, который будет распространяться на все классы и выполнять логин). Для запуска группы тестов можно делать сюиты
Аннотация @ParameterizedTest не раскрыта, тк мы передаем по сути идентичные параметры
Целый тест в одной функции не очень практика
https://github.com/artem24630/autotesting-2022/blob/512a593537ac513ab42931930a85dec79d9203ba/src/test/java/pages/MessagesPage.java#L95
Лучше в тестовом классе, например, выполнять логин, заходить в сообщения, там же получать первый чат, проверять, что он не null - assertNotNull(firstChat, "У пользователя не найдено чатов"), остальные проверки оставить в функции и сделать ее просто функцией, проверяющей, что все нужные элементы на месте, либо для этого сделать отдельную обертку, либо сделать отдельные функции на корректное имя чата и тд и, например, в функцию на имя чата передавать ожидаемое значение и сравнивать с актуальным там, или возвращать имя чата и уже в классе делать assertEquals()
Создание пользователя и логин лучше для каждого теста делать в Before, а не в общем AbstractTest, тк мы можем захотеть написать тест, где не нужна сессия, например, на регистрацию
Один тест - один класс (Не считая @ Nested, где кстати можно сделать Before, который будет распространяться на все классы и выполнять логин). Для запуска группы тестов можно делать сюиты
Добавить в ассерты сообщения, поясняющие падения https://github.com/artem24630/autotesting-2022/blob/512a593537ac513ab42931930a85dec79d9203ba/src/test/java/tests/MessagePageTest.java#L35
Класс MessagePageTest - Где внутри @ Nested тесты? https://github.com/artem24630/autotesting-2022/blob/512a593537ac513ab42931930a85dec79d9203ba/src/test/java/tests/MessagePageTest.java#L59
Тут тоже добавить should проверки https://github.com/artem24630/autotesting-2022/blob/512a593537ac513ab42931930a85dec79d9203ba/src/test/java/pages/elements/ChatsPageElement.java#L74
Аннотация @ParameterizedTest не раскрыта, тк мы передаем по сути идентичные параметры
Целый тест в одной функции не очень практика https://github.com/artem24630/autotesting-2022/blob/512a593537ac513ab42931930a85dec79d9203ba/src/test/java/pages/MessagesPage.java#L95 Лучше в тестовом классе, например, выполнять логин, заходить в сообщения, там же получать первый чат, проверять, что он не null - assertNotNull(firstChat, "У пользователя не найдено чатов"), остальные проверки оставить в функции и сделать ее просто функцией, проверяющей, что все нужные элементы на месте, либо для этого сделать отдельную обертку, либо сделать отдельные функции на корректное имя чата и тд и, например, в функцию на имя чата передавать ожидаемое значение и сравнивать с актуальным там, или возвращать имя чата и уже в классе делать assertEquals()