unfortunately this is not how RADIUS/TACACS servers work or IOS works.
As you have command,
aaa authentication login TEST group radius group tacacs+ local-case
Till the point radius server is UP, if you provide a username that does not exist on the Radius server, it will be always send Access-Reject (FAIL). And IOS can only go for next method (in your case tacacs and then local), only when it gets an ERROR, which is only possible when radius server/services are unavailable.
Here is what I can recommend in your scenario. You can make use of Radius proxy, in that case users would be required to login in a different fashin, something like,
john@alfa , and we can proxy it to appropriate server based on keyword '@alfa'.
Before that, what is your Radius server and what is your Tacacs server at this moment ?
Regards,
Prem
Please rate if it helps!