https://alexop.dev/posts/frontend-testing-guide-10-essential-rules/