Você ainda pode fazer algo semelhante:
v=$(printf "test%03d" $(($RANDOM%4+1)))
v=${!v}
em que bash ${!variable}
faz um nível de indireção em relação à variável real test001
etc.
Quando os nomes das variáveis podem ser qualquer coisa, por exemplo, test001 somevar anothervar, configure um array:
declare -a teststrings=(test001 somevar anothervar)
v=${teststrings[$(($RANDOM % ${#teststrings[*]}))]}
w=${!v}
echo $w