There can be situations where we need to build ipa and distribute locally. If you are talking about a completed app(release mode) which just has to be tested and if it is bug free , release it, then TestFlight is the right choice. What if we are talking about a debug mode ipa? Pushing a debug mode build to the itunes connect doesn’t make any sense to me. I prefer ipa in such situations.