A problem with software testing is that testing all combinations of inputs and preconditions is not feasible when testing anything other than a simple product.
This means that the number of defects in a software product can be very large and defects that occur infrequently are difficult to find in testing.
More significantly, parafunctional dimensions of quality--for example, usability, scalability, performance, compatibility, reliability--can be highly subjective; something that constitutes sufficient value to one person may be intolerable to another.