Someone recently asked me, whether he should do a limited-market test launch for a product he knows isn't finished yet, in order to learn more from actual users. A worthy goal, of course. Perhaps you're considering the same thing. I have, many times. Before you decide either way, consider the following:

What do you expect to learn? If you need to see people using your product, throwing it on the App Store won't help you achieve that objective. Better you go a nearby meetup of people you'd like to see using your product, introduce yourself and ask them to test it while you're looking. If you can't take the product with you or need to have an entire team experience the end-user feedback first hand, invite 10 people over for some pizza (either to your office or some more cozy environment) and record the event on video. I promise you, it'll be an eye-opening experience.

Do you have a hypothesis you're trying to verify? Can you state how you're verifying it? Can you state a test which would prove your hypothesis is false? Are those tests something that you can implement and measure over a launch? Awesome! If not, then you need to think harder and probably identify some other way of gaining the insight you're looking for.

Are you just trying to gather experience of something not directly related to the product itself? Such as, you don't yet know first hand how to manage an App Store launch. Well, you could launch your baby -- or you could quickly create another product with which to learn what you needed to learn. This tactic has the added benefit that such side-products are typically simpler, so they're easier to analyze for the understanding you're after.

But most importantly, what will you do if your test comes back with a negative result? Far too often, this hasn't been given any consideration, and when it does happen (as it typically does, if you haven't thought through the process), the response is "oh, the test failed, never mind, we'll just go ahead anyway". Unfortunately, in most such situations, it was not the test which failed. Rather, it successfully proved that the hypothesis being tested was incorrect. This is a completely different thing, and going ahead without changes would be a mistake after such a result. You have to be prepared to make the hard decisions. For example, Supercell killed Battle Buddies after their test launch showed it would not convert enough people.

You should test often and early. You should gather market data to support significant further investments of time or resources to any development you're undertaking. But you should also be prepared to take any necessary actions if the tests you're running show that your assumptions were incorrect, and the product doesn't work the way you intended. Those are not easy decisions to take, if you're invested into the product, as most creators would be. Think it through. A launch is not a test.