testing-aqa middle

В чём разница: AssertJ vs Hamcrest?

Ответ

AssertJ — fluent API (assertThat(x).isEqualTo(y).hasSize(3)), более читаемый, богаче. Hamcrest — matchers (assertThat(x, equalTo(y))). В вакансии Лиги оба.

Разбор: AssertJ использует fluent-цепочки assertThat(x).isEqualTo(y).hasSize(3) с автодополнением под тип, а Hamcrest — композицию matcher'ов assertThat(x, equalTo(y)). Ловушки дистракторов — поменять стили библиотек местами, объявить их встроенными в JUnit или приписать одинаковый API; на деле это разные подходы, и обе подключаются как отдельные зависимости.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться