Open a-yasevich opened 2 years ago
https://github.com/artem24630/autotesting-2022/blob/7a5214695bc12133e398a6a736259dcf1703eb8f/src/test/java/tests/RingTest.java#L9 Тут нейминг неправильный - не camelCase
https://github.com/artem24630/autotesting-2022/blob/7a5214695bc12133e398a6a736259dcf1703eb8f/src/test/java/tests/MessagePageTest.java#L51 Это выглядит не очень, и по идее может быть заменено на should(condition, duration)
Тут нейминг неправильный - не camelCase
Согласен, показалось, что с camelCase будет нечитаемо
Это выглядит не очень, и по идее может быть заменено на should(condition, duration)
Я спрашивал у Эмилии, и она сказала, что так тоже можно. Еще есть вариант Selenide.sleep()
Тут дублирование кода, эту строчку можно заменить на метод load()
хорошо
Класс вроде не используется как я понял просто забыли убрать)
Хорошо бы проверять на существвание через should, выбрал просто эту строчку но в других местах тоже видел)
Тут явно задаете путь через строку лучше использовать Path, ну и + расширение .exe только для Windows получается. На маке тесты не запустились, про линукс не знаю)
На сколько знаю использование таких asser неплохо для дебага, но использовать в конечном коде не очень хорошая практика.
Ну вообще странный подход) Если можно обойтись без явного sleep. Тут на мой взгляд можно либо при конструировании проверять либо сделать что-то подобное у MessagePage
public static Duration TIMEOUT = Duration.ofSeconds(2);
public void check() {
$(selector).should(Condition.exist, TIMEOUT);
}
Ну вообще странный подход) Если можно обойтись без явного sleep. Тут на мой взгляд можно либо при конструировании проверять либо сделать что-то подобное у MessagePage
public static Duration TIMEOUT = Duration.ofSeconds(2); public void check() { $(selector).should(Condition.exist, TIMEOUT); }
переделал
Класс вроде не используется как я понял просто забыли убрать)
Убрали
Хорошо бы проверять на существвание через should, выбрал просто эту строчку но в других местах тоже видел)
Так чат может существовать, а может и нет. Мы не дискриминируем пользователей, которые ни с кем не общаются.
Тут явно задаете путь через строку лучше использовать Path, ну и + расширение .exe только для Windows получается. На маке тесты не запустились, про линукс не знаю)
1) Почему лучше использовать Path? 2) Сделали программу адаптивнее к операционке - проверьте
Тут дублирование кода, эту строчку можно заменить на метод load()
Заменили
Тут нейминг неправильный - не camelCase
Исправили
Тут явно задаете путь через строку лучше использовать Path, ну и + расширение .exe только для Windows получается. На маке тесты не запустились, про линукс не знаю)
- Почему лучше использовать Path?
- Сделали программу адаптивнее к операционке - проверьте
В разных опрационнах системах могут использоваться разные разделители, https://docs.oracle.com/javase/tutorial/essential/io/path.html
Не работает, но выглядит явно лучше чем было
Хорошо бы проверять на существвание через should, выбрал просто эту строчку но в других местах тоже видел)
Так чат может существовать, а может и нет. Мы не дискриминируем пользователей, которые ни с кем не общаются.
Что будет если элемента не существует и вы вызовете метод size()?
Тут явно задаете путь через строку лучше использовать Path, ну и + расширение .exe только для Windows получается. На маке тесты не запустились, про линукс не знаю)
- Почему лучше использовать Path?
- Сделали программу адаптивнее к операционке - проверьте
- В разных опрационнах системах могут использоваться разные разделители, https://docs.oracle.com/javase/tutorial/essential/io/path.html
- Не работает, но выглядит явно лучше чем было
может не работать, потому что chromedriver для мака на м1, попробуйте использовать свой, на котором вы делали проект
Хорошо бы проверять на существвание через should, выбрал просто эту строчку но в других местах тоже видел)
Так чат может существовать, а может и нет. Мы не дискриминируем пользователей, которые ни с кем не общаются.
Что будет если элемента не существует и вы вызовете метод size()?
если вы про то, что можно словить NPE, то это легко обходится проверкой на null, но если хотите, я поставил аннотацию Nullable для предупреждения
@a-yasevich @nikita17th хорошие замечания по коду, но недостаточные, не хватило оценки работы с паттернами и junit Дополнила #3
https://github.com/artem24630/autotesting-2022/blob/7a5214695bc12133e398a6a736259dcf1703eb8f/src/test/java/pages/elements/ChatsPageElement.java#L48 Тут дублирование кода, эту строчку можно заменить на метод load()