Selenium is a great all-rounder but it's not a tool for everything. I've seen some of the scenarios listed here by Nikolay Advolodkin that were tested with Selenium (email is the classic one) and I can confirm there are better ways and tools to do it.
Different rendering times of the elements in the browser often make automated tests flaky. So, here Conan Theobald explains how to implement your own
waitFor method in Puppeteer that makes sure that elements are present before performing any action on them.
If you're wondering how to effectively simulate testing web on various mobile screen sizes, this handy script for Cypress by Gustavo Miguens will make your life so much easier.
It's a well-written article where Brian Elgaard explains how using BDD together with larger units and fewer test doubles can improve unit testing. All that complemented by C# code examples and a lot of accurate references to external resources.
Note: If you can't access the full article, simply open it in a private tab.
The new version of Xcode brings in some exciting features in testing. And this is an amazing guide by Rony Rozen that explains them all. Enjoy!
Having worked on two mobile testing projects in the past, I couldn't agree more with Jas Manigundan on the importance of keeping mobile UI tests in the same repository as the app's codebase and, ideally, use the native frameworks to test them.