I am posting this solution to a problem (in vanilla 1.12.2) that took me a long time to find an answer for in case anyone else runs into it.
Command blocks with "/testfor @a[x=-275.5,y=63.0,z=-72.5,r=3]" act exactly the same as "/testfor @a[r=3]". (Coords don't matter).
The solution is to use "/testfor @a[x=-275,y=63,z=-72,r=3]". I have not found the lack of support for decimals documented anywhere.