Test Automation Developer Plan

Note: This plan is WIP

Start an Ultralearning Project

  1. Make a metalearning map
  2. Design drills
  3. Overlearn

Choose an Ultralearning project:

I want to learn:

Test Automation

1. Make an metalearning map

  • Concepts
  • Facts
  • Procedures

What concepts do I need to understand?

  • Element Locators
  • POM
  • WebDriver
  • Selenium
  • Appium
  • Test Automation Pyramid
  • iOS Testing considerations
  • Android Testing considerations

What facts do I need to memorize?

  • Writing Locators
    • Web + Mobile
      • dropdown menus
      • checkboxes
      • text fields
      • buttons
      • links
      • alerts
      • file upload widgets
      • frames
    • Mobile Only
      • swiping
      • pinching
  • Git Basic commands
  • Shell/terminal basic commands
  • Basic Programming Structures

What procedures do I need to practice?

  • Automation Scripting

  • Postman / Newman

  • Charles Proxy

  • Terminal/Shell commands

  • CI/CD

  • YAML

  • Checkout: https://github.blog/2019-08-08-github-actions-now-supports-ci-cd/

  • Checkout: https://www.valentinog.com/blog/ci-js/

  • https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-syntax-for-github-actions


2. Design Drills

Drill: 1. Web Browser Automation

Sites to practice against:

Restful Booker The-internet (Heroku) ToolsQA Formy ParaBank (login is john/demo) OpenCart

Drill: 2. Mobile Automation

Apps to practice against:

Sauce Labs Swaglabs app

Drill: 3. API Automation

APIs to practice against: Swagger Petstore ParaBank Restful booker Zippopotam.us API Challenges by Evil Tester

Drill: 4. BDD driven Automation

Drill: 5. Visual Automation

Drill: 6. Build Pipelines

Drill: 7. Explore other languages and libraries

Languages
  • Java
  • JavaScript
  • Python
Libraries
  • Cypress
  • Nightwatch

Drill: 8. Accessibility automation

Drill: 9. Performance testing

Drill: 10. Unit Testing


Additional Resources: