Чаще всего в статьях о юнит-тестировании упоминаются такие столпы как JUnit, TestNG, Mockito. О них все слышали, много пишут разных статей и обзоров. Но есть и менее известные библиотечки, которое очень удобны при написании юнит (и не только) тестов. Одна из них — Fest Assertions.
Её главным предназначением является помощь в написании ясных и человеко-читаемых утверждений (assertions) в тестах. Для того, чтобы вам было быстрее и удобнее их писать она использует т.н. fluent interface
Если вы используете Maven, то просто добавьте её в зависимости:
Теперь вы можете использовать её в своих тестах. Например:
На домашней странице приведены ещё некоторые примеры использования assertThat() для коллекций, исключений и других объектов (нужно ли говорить, что вы можете написать также и свои?).
В чем удобства этой библиотеки?
Во-первых, overridingErrorMessage() как-то слишком длинно. Во-вторых, его нужно обязательно вставить между объектом для сравнения и самим условием, из-за чего они "разрываются" и теряется та самая читабельность.
В остальном же библиотека мне показалась очень интересной и удобной.
Её главным предназначением является помощь в написании ясных и человеко-читаемых утверждений (assertions) в тестах. Для того, чтобы вам было быстрее и удобнее их писать она использует т.н. fluent interface
Если вы используете Maven, то просто добавьте её в зависимости:
Теперь вы можете использовать её в своих тестах. Например:
На домашней странице приведены ещё некоторые примеры использования assertThat() для коллекций, исключений и других объектов (нужно ли говорить, что вы можете написать также и свои?).
В чем удобства этой библиотеки?
- всего один import
- авто-дополнение методов в IDE
- более читаемый код
- независимость от тестового фреймворка (например, assertEquals() в JUnit и в TestNG имеет различный порядок аргументов. Если вы будете использовать fest, то в случае необходимости вам будет проще мигрировать на другой тестовый фреймворк)
Во-первых, overridingErrorMessage() как-то слишком длинно. Во-вторых, его нужно обязательно вставить между объектом для сравнения и самим условием, из-за чего они "разрываются" и теряется та самая читабельность.
В остальном же библиотека мне показалась очень интересной и удобной.
Комментариев нет:
Отправить комментарий