Автоматизировать тестирование функциональности кеширования в приложении Spring Boot - PullRequest
1 голос
/ 06 августа 2020

Мне интересно, как мы можем тестировать автоматизацию функциональности.

Я работаю над микросервисом Spring Boot, где мы используем кеш GemFire. Прямо сейчас я тестирую его вручную для сценария ниже ios:

  1. Правильно ли очищаются данные после достижения TTL
  2. Получение данных из кеша, если объект существует

Итак, я знаю, что у нас может быть отдельная служба, которая вызывает GemFire ​​и проверяет, существует ли объект в кеше (для шага 2). Но не совсем уверен, как мы можем автоматизировать тестирование для шага 1.

И весь вопрос, который мне интересно, заключается в том, действительно ли нам нужна новая служба, чтобы полностью протестировать это как накладные расходы? Есть ли какие-нибудь инструменты / лучший подход для тестирования функциональности?

Ответы [ 2 ]

2 голосов
/ 07 августа 2020

Поскольку вы используете spring-boot и VMware GemFire вместе, я очень надеюсь, что вы пользуетесь огромной помощью и функциональностью, которую spring-boot-data-gemfire предоставляет из коробки. Если да, то вы были бы рады узнать, что есть еще один проект, spring-test-data-geode, который можно использовать для написания тестов Unit и Integration при создании приложений Spring Data for Apache Geode & VMware GemFire. действительно стоит попробовать, так как это очень помогает в управлении областью и жизненным циклом фиктивных VMware GemFire / Apache Geode объектов, наряду с очисткой всех ресурсов, используемых реальными объектами, используемыми во время Integration Tests.

Как примечание: если вы используете Data Expiration Functionality , поставляемую из коробки с VMware GemFire, я действительно не вижу реальной необходимости (кроме спокойствия, которое приходит с Я протестировал все, что мог, ), чтобы включить специальные тесты в ваш набор тестов, вы должны тестировать только то, что у вас есть. Сама функциональность тщательно протестирована уже в рамках самого проекта VMware GemFire / Apache Geode, и вы можете увидеть некоторые (конечно, не все) примеры таких тестов по следующим ссылкам: ExpirationDUnitTest , RegionExpirationDistributedTest , ReplicateEntryIdleExpirationDistributedTest .

Ура.

0 голосов
/ 06 августа 2020

У меня был некоторый успех с использованием TestContainers здесь - это код, используемый для создания контейнера, а - образец теста . Он работает, выполняя команды gf sh в контейнере, но работает медленно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...