In every industry there are some fundamental struggles that everyone faces. In software testing, I consider one of the more complex problems to be communicating done-ness, the dreaded “when will you be done testing X” question, or the “how much do you have left”.
Why is this so difficult? Well any tester knows how an infinite number of test cases can be made for even a trivial application. As a result, the tester is left making decisions as to which tests are most likely to expose problems given available resources. There isn’t an obvious “done” reached, but instead have to decide when it is “good enough”.
Coming from a development background, I’m used to the sometimes ambiguous art of estimating time. I contend that estimating testing is a much more difficult task, a factor of how difficult it was for the developer to estimate the same particular tasks and the skill of that developer.
With experience and exposure one can learn some of the traits and characteristics that help improve estimate accuracy. For example, I have to touch the project a few times and know the development team to establish how confident I am in the project and that tests against the project meets an appropriate level.
Focus on documenting discoveries, explaining concerns without bias, and conveying the value of what you offer. Ultimately management needs to trust your judgement and your ability to say testing is done.