How to measure the degree of randomness in Disk I/Os?
I am not aware of any formal discrete metrics of spatial and/or temporal locality of reference. Maybe someone else can enlighten us on that.

Often I see metrics used that are relevant to the particular platform you're studying. So the metric is either 'L1 cache misses', 'branch mispredicts', 'hard drive head movement', etc. You can google how to measure those.

You can make ad-hoc models by saving the location of your read/writes and applying penalties if those locations (or 4K blocks around those locations) haven't seen I/O recently.