This book was really helpful for me. It broke down how to structure tests, what results in brittle tests, what to avoid to keep tests maintainable. I believe it answers most of your questions. Software Engineering at Google, Chapters 11-14 Testing: https://www.oreilly.com/library/view/software-engineering-at...