I have a rather silly question - when designing UI features, how do UI designers test whether a design works as expected/is objectively good, and not just "Oh, this looks good to my eyes, others would probably feel the same way too!"? Off the top of my head, I can think of two ways - (i) have a private test audience, show various iterations to them, get feedback, and choose those features with highest scores given by the audience; (ii) get feedback from the end users, and make modifications as necessary. However, I'm guessing (i) is an expensive and time-consuming route, whereas (ii) could potentially lead to poor user experience and be detrimental for user retention. Is there a better way? In short, what's the "unit testing" equivalent in UI design?