I must say I agree with you, in that few of these personality tests really give an accurate description of who we are. Although, I think the idea with personality tests is that they give a reasonably accurate estimate regarding a person’s commonly displayed traits – not an exact description or analysis. I think that an exact description is impossible, because as you said, people tend to change, both over time and depending on mood/situation.
Taking this into account, I’ve come up with an idea that I think explains at least certain aspects of personality. I believe that we trial and test different personality traits throughout the earliest parts of our lives and adopt certain characteristics into our personalities because we believe that they have yielded agreeable consequences. We could be more or less classically conditioning ourselves in our personalities. This idea is similar to the existential approach to personality, which states that we have no fixed nature and thus we must create our personalities.