I have actually tested, not with test equipment, but driving down the highway away from a local repeater, talking to the repeater owner, swapping antennas. In order, we found, worst to best for range:
Stock Baofeng - sucks
Nagoya NA-666 so-so appx 8" long
Puxing J0125A (aka "The $3.79 antenna", which is now just over $4.00) a pleasant surprise - appx 8" long
Nagoya NA-701 Better than the J0125A by a mile or two - appx 8" long
Nagoya NA-771 Best overall - BUT it is 16" long. It was just a mile or two better than the NA-701.
Overall, yes, the NA-771 gave the best range, but it is far from "handy". If you just have to have maximum range, this is the choice, but to carry this around daily, no way.
I recommend the NA-701 as a more "handy" antenna, which still gives very good range. Both the NA-771 and NA-701 sell for about $13 on ebay.
I consider the J0125A a "best buy", and a pretty noticeable step up from the stock Baofeng antenna.
So, where to buy the Nagoya antennas and get a genuine one? Let me recommend ebay seller radioshop888. I've bought three NA-701s from them for myself, and others for friends.
So, there, pick your poison.