On closer inspection I see that when test results are merged together, TestResult looks at the timestamp of each SuiteResult to determine whether it's a duplicate. So in the case of 'proper' JUnit report XML files, that include a timestamp, duplicate results should be discarded. So following symlinks is unlikely to be the cause of
JENKINS-17822 (nowadays, at least).
We are producing test report XML files (from Python tests run using Jython) that don't include a timestamp, so the 'duplicate' results aren't being discarded.