I enjoy breaking software. I also enjoy writing software that breaks software. However, my favorite thing is teaching others how to become better software test engineers.
I've compiled a list of tutorials on automated software testing tools and quality assurance techniques below. Check back often for new test automation tutorials and please reach out on Twitter if you have questions or have topic requests.
Nightwatch is quickly becoming my favorite general-purpose web automation tool over selenium webdriver. It can run tests in Chrome, Firefox, and Edge browsers. There are competing frameworks like Cypress that are popular, but only work in Chrome. I also hear Protractor is good, but is tied closely with Angular apps.
It is currently my frontrunner given the more general applicability, support for page objects, dynamic waits, and quick setup.
When writing automated browser tests at the UI using frameworks like Selenium or Nightwatch.js it can be useful to validate your front-end interactions cause the desired changes in the backend database. This tutorial will show you how to use Nightwatch to write database tests against SQL databases.
Selenium Webdriver is a workhorse. Java is not my favorite language, but sometimes it is easier on your team to understand and help with testing if you write your tests in the same language the software being tested in written in.
The tutorial below will show you how to write reliable and refactorable tests in Selenium by using dynamic waits and the page object model.