Not to be a fanboi, but...
A device like this, with 500..600MB of firmware has millions of lines of source code. A few faults out of all those millions of lines is actually quite good. There are a few documented issues, yes. They make mistakes. They are people, and the phone is just a machine. To say it should undergo testing implies that it does not get tested? That's silly. These things get tested over and over again. Do you think Apple would be so world renowned for making quality products if they had 100's of bugs all over the place? The fact that have so few problems, on the whole, is indicative of their absolute drive for perfection.
Most of us developers can only dream of achieving such a good ratio of bugs/lines of code.