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