You should refactor the name of this class anyway, to avoid such collisions in the future. And it will be less painful to do it sooner rather than later.
It is probable that you import a file that imports <objc/runtime.h>
at some point.
As the matter of what the difference is between the test target and the regular target, on Xcode testing works by injecting the symbols onto a bundle. There might be some differences in code stripping and symbols visibility that could explain this kind of error.
No wonder Apple recommends to prefix classes with 2 or 3 letters