test-tools
56 subscribers
7 photos
28 links
Tools suite to write integration tests in Spring Framework
Инструменты для написания интеграционных тестов в Spring Framework

All questions you can write to me @antkorwin
Если у вас есть вопросы, то не стесняйтесь написать мне @antkorwin
Download Telegram
релиз spring-test-mongo 0.13
опубликовал новый релиз в maven-central

коротко о главном:
- библиотека теперь совместима с spring boot 2.1.4
- нативная поддержка GeoJson (больше не надо писать никаких кастомных десериализаторов, все работает из коробки в обе стороны, с объектами типа: поинты, лайны, полигоны...)
- readOnly dataset-ы чтобы одной аннотацией сказать, что данные в тесте не будут меняться
- фиксы багов: используем массив флоатов в датасэтах и совместимостью со старым бутом 2.0.8 и младше (и когда это он успел стать старым 🤔)

полный release notes тут:
https://github.com/jupiter-tools/spring-test-mongo/releases/tag/v0.13

#mongodb
Добавил библиотеку для работы с redis-ом:
https://github.com/jupiter-tools/spring-test-redis

позволяет стартовать контейнер в тестах, указав одну аннотацию,
в общем, все так же, как и для предыдущих библиотек, можно брать и пользоваться:

@SpringBootTest
@RedisTestContainer
class RedisTestContainerTest {

@Autowired
private RedisTemplate redisTemplate;

@Test
void readWriteValueByRedisTemplate() {
String key = "test";
String value = "sabracadabra";
// Act
redisTemplate.opsForValue().set(key, value);
// Assert
assertThat(redisTemplate.opsForValue().get(key)).isEqualTo(value);
}
}


-
можно использовать и в junit4 и в junit5,
- можно стартовать несколько контейнеров разом, в одном тестовом сценарии
Прошлые выходные у меня прошли под флагами работы с test-properties в Spring Framework. Сегодня наконец-то нашёл время поделиться с вами своими заметками по этому поводу:
Как задать динамически-вычисляемое значение свойства (property) в тестах:
http://antkorwin.com/test_properties/dynamic_properties.html
Небольшая история моего очередного коммита в Spring Framework,
в этот раз исправляем поведение аннотации TestPropertySource так,
чтобы можно было ее использовать одновременно
в своих мета-аннотациях и локально над тестовыми классами:
http://antkorwin.com/test_properties/test_property_source_repeatable.html
Библиотека для использования динамически-вычисляемых свойств(property) в тестах
https://github.com/jupiter-tools/spring-dynamic-property
На прошлой неделе пришлось активно использовать Kafka, давно хотел с ней поработать и вот попалась подходящая задача.
Надо сказать, что как event-streaming платформа, кафка оставляет очень хорошее впечатление.
Собственно, к чему я тут про кафку - на выходных я добавил библиотеку для использования в тестах Kafka: https://github.com/jupiter-tools/spring-test-kafka

Все в лучших традициях, одной аннотацией можно запустить кафку в докере и пользоваться ей.
Кстати, на одной из конференций мне кто-то рассказывал, что им приходится запускать для одного тестового-сценария сразу 2 контейнера кафки, уже точно не помню, какой там был юз-кейс, но я решил предусмотреть возможность запуска нескольких контейнеров в одном тесте. Подробнее можно глянуть в документации к библиотеке выше.
Начинается новый сезон конференций, очень рекомендую JokerConf в Питере, в этом году там довольно много приезжих спикеров, похоже новый визовый режим дает свои плоды.

Если вы интересуетесь интеграционным тестированием в Spring Framework, то доклады Джоша Лонга и Сергея Егорова - must have!
Кстати говоря, в декабре я буду выступать на зимнем Heisenbug в Москве, тема в этот раз совсем не хардкорная, правда немного специфичная (Internet of Things и все дела), но я думаю будет весело =)

https://heisenbug-moscow.ru/2019/msk/talks/5zwi9ky1ryrgo2kbgzmjuy/
Всем привет!
Надеюсь вы успешно вошли в рабочий режим после Нового Года, тем временем, мы с друзьями из jugru стартовали подкаст «битовая каска», где будем обсуждать темки, которые кажутся нам интересными: Backend/frontend/QA/java, конференции, стартапы...
У меня много нового материала, постараюсь в этом году выходить на связь регулярнее.

Так что like/repost/stay tuned!!! ;)
Новый эпизод подкаста - в гостях Head of QA VK.ru - Анастасия Семенюк

в этом выпуске:
- чем может закончиться экскурсия в дом Зингера
- тестируем код олимпиадников
- что делать если для проекта написан свой язык программирования
- как стать директором по качеству VK.ru
- и что должен уметь хороший тестировщик

https://bitcask.live/2020/01/28/0x02-zingertesting/
Записали очердной выпуск подкаста, в этот раз обсуждаем банковский enterprise, микросервисы, spring boot, и даже немного реактивщину, вместе с Гореликовым Максимом

https://bitcask.live/2020/02/10/0x04-can-of-worms/
Надоело посматривать на kotlin и scala каждый раз когда нужен какой-нибудь синтаксический сахар, которого нет и еще долго не будет в java, в общем я решил запилить String interpolation в JAVA =)
и вот что из этого получилось:
https://github.com/antkorwin/better-strings

пользоваться очень просто, подключили одну зависимость и полетели…

Любые замечания и предложения, приветствуются на гитхабе в issues - не стесняйтесь (ну и звездочки конечно можно ставить 😀)