Development Guidelines

Test automation is software development. There is no second thought to it. Like software development, we need to follow good design principles and best practices during the development lifecycle of the test automation suite.

In the era of CI/CD and DevOps, there are numerous guidelines, best practices for coding and software design principles that have proven to work in different environments and application complexity.

In this document, we pick a subset of the best practices, industry standards and guidelines that can be applied to our test automation development.

We strongly believe that the below guardrails, principles, standards and practices can be applied in our environment so that we can achieve our goal of providing early feedback to the developers via continuous testing of RHCS.

Guardrails

The below guardrails help us to navigate through the difficult and testing times. It also guides in selecting the best approach.

  • Readability

  • Simplicity

  • Modular

  • Re-usability

  • Design Principles

With time, it becomes increasingly essential to follow good design principles that can help us throughout the software development lifecycle. Applying SOLID principles during our development helps in developing a better test automation suite. It is a set of five principles and they are

  • Single Responsibility Principle

  • Open/Closed Principle

  • Liskov Substitution Principle

  • Interface Segregation Principle

  • Dependency Inversion Principle

A good reference is available here.