- Never automate tests without setUp and tearDown. Each test should be independent of the other. I.e. one test should not depend on the other to execute.
- Make sure even the tiniest of your tests are run on a CI server. E.g. Bamboo, Jenkins, Solano Labs.
- Learn how different models work and apply them. E.g. Page Object Model.
- Learn higher level frameworks and apply them. E.g. Robot Framework. It allows you to pick multiple frameworks. E.g. Appium and Selenium at the same time to test web and mobile within the same code.
- Do not attempt or promise to automate everything. Read Test Automation Myths.