Jags's Blog


Jags's Blog

Get better at Automation

Photo by Simon Kadula on Unsplash

Get better at Automation

Learn how to automate better

Jags's photo
·May 4, 2022·

3 min read

Play this article

Let's talk automation , which is literally the software industry.

I am gonna talking about automation in context to Testing/Quality. I am writing this post, as reference point , that I can come back at a later point of time , and measure my progress. This would work as a Rubric).

Guidelines :

  • Do you understand the concepts of

    • Test Pyramid
    • CI /CD
    • BDD
    • TDD
    • Writing Unit tests, Integration tests and E2E tests . Identifying the differences between them.
  • Language Dexterity / Comfort Level :

    • How comfortable are you with a given language e.g. : Java , Python , Scala, Erlang
    • Do you understand how to manage dependencies effectively and tooling provided for it in that particular language ecosystem.
    • Have you written / developed a working proof concept for the test automation framework.
    • Is there a way to enforce coding standards : Code Style Guides.
  • Cloud & Containers & Everything in between

    • Unlike 5 years ago, now we have Docker & the cloud offerings (GCP & AWS, etc) have matured significantly. Hence, knowing these skills are important. The reasons being , more often than not ,
      • You work in a team.
      • The technical skills you pick up are easily augmented by real world experience. You can gain nuance and context around technical implementation. This is true for any skill, not just this particular one.
    • Rate yourself on
      • Comfort level with a Cloud Provider(s). You can always go for more.
      • Spinning up Jenkins or Buildkite based CI/CD solution. First manually and then via code.
      • Kubernetes Expertise and Usage.
  • Have you written an

    • API Test Automation Framework
    • UI Test Automation Framework
    • Performance / Load Test Automation Framework (backend)
    • Front End Performance Test Automation Framework
    • Mobile Test Automation Framework from scratch using the below as guidelines
    • Did you use any design patterns and coding principles (SOLID, Page Object, Clean Code)
    • Dependency Management
    • Exception Handling
    • Test Reporting
    • Parallelisation
    • Improving Determinism of the api tests
    • Using a hermetic environment ( via containers) to improve determinism and speed up the tests further more.
    • Run the API tests in CI
    • Synthetic Production monitoring i.e. run tests in prod to ensure a business workflow is functioning.
  • Communication Skills

  • Mobile Testing

    • Figure out reasons when to go native approach such as Espresso and XCUITest & when to go something like Appium
    • CI/CD such as Bitrise.io
    • Comfort level around how app deployment and distribution works for an mobile ecosystem and any costs associated around it.
  • Resources to you use for learning and Exploring

    • Nothing like a real world implementation
    • YouTube Channels, Conferences & Talks
    • Blogs
    • Tech Guides
    • Documentation
    • GitHub
    • Follow people on twitter, from whom you can learn.
    • Experiment and fail. You learn a lot from failures.

    One can build a mind map for each language ecosystem essentially, using the above info. Build yours and keep track of it.

    P.S. : Feedback is always welcome. You can tweet me at : @vaikuntj .

Did you find this article valuable?

Support Jags by becoming a sponsor. Any amount is appreciated!

Learn more about Hashnode Sponsors
Share this