I’ve been thinking on ways to test a feature where a caching system was introduced.
The list of ideas is short. So I considered looking around on the internet of more…with no luck.
So far I have:
- Is caching of an error(not responding, invalid response, timeouts, etc…) possible? Example there’s a timeout on the other side, and the caching system is catching the response. What does it do with it?
- Timing of caching; For how much time is the data cached? Investigate into the timing; Is it too much, too little?
- Data refresh; Is the data refreshed with new ‘fresh’ request/data set after the timing expires?
- Sizing of the request-timing; Is the caching of the request faster or slower for the retrieval of the data?
- Cache-Control headers ?!
- Is there a variable for the request that is important that the caching knows about? Example a header for language which is used for the response; Can there be that the header is not used in cached request/response and the user gets the content from a different language?
- Data dependency; are there other systems that require ‘fresh’ data?
- Caching storage location; memory/disc, server/user; can the storage be tempered?
- Replication/extension; is the caching done for just a single request coming from a particular place or is it extended to any requests?
What would you look into while testing a cached request/response?