And yes, you can never really accurately estimate, and new things will pop up all the time. But it's a good skill to know when your estimate is "off". Like, I was asked once about how long it would take to test a "simple" web application, which does some simple things.
On the first day, I saw it only had like 5 functions. Then I gave myself admin rights and...OOF