Subtle Art of Leveraging Docker Compose for Test Automation

Powerful, yet subtle.

Many of us over the years have executed test automation against a production-like test environments. By the term "production-like," I mean test environments that have the same set up as a production environment but may or may not have the exact configuration as that of the production environment.

However, when it comes to executing test automation against the test environments, there is always a certain degree of challenge (although solvable) that an engineer faces. Classic examples include:

Apache Kafka In Action

Challenges and Limitations in Messaging

Messaging is a fairly simple paradigm for the transfer of data between applications and data stores. However, there are multiple challenges that are associated with it:

  1. Limited scalability due to a broker becoming a bottleneck.
  2. Strained message brokers due to bigger message size.
  3. Consumers being in a position to consume the messages at a reasonable rate.
  4. Consumers exhibiting non-fault tolerance by making sure that messages consumed are not gone forever.

Messaging Limitations Due to:

High Volume

Messaging applications are hosted on a single host or a node. As a result, there is a possibility of the broker becoming the bottleneck due to a single host or local storage.

The Hitchhiker’s Guide  to  Jenkins Job Builder

Although the documentation for Jenkins Job Builder is very detailed, the step-by-step guide with examples for them is somehow missing. This was the main motivation for me to write this blog. 

Pre-Requisites

  1. Pip
  2. Git
  3. An up-and-running Jenkins instance

Setting Up Jenkins Job Builder

Here, we will be walking through the steps needed for using the Jenkins Job Builder.