This post aims to help testers create a test environment for practicing testing microservice-based architecture. A lot of testers would like to learn how to test applications that are loosely coupled microservices. But testing these applications generally require access to cloud based infrastructure. So the most common way professional testers first test such applications is at their day job. This […]
Open sourcing Newsletter Generator using Terraform
Multiple invocations of lambda – The issue and the fix
I recently implemented a Python script to trigger AWS Lambdas conditionally as part of a Microservices app we built at Qxf2 . I experienced multiple invocations of the lambda issue, which made me go in circles. Hence, I decided to share the thinking behind and the fix. Spoiler: The culprit happened to be a default timeout setting in the boto3 […]
Triggering Chef InSpec tests with Airflow DAG
In this post, we will show you how to write some Python code to create an Airflow “job” (aka Directed Acyclic Graph or DAG) to trigger some infrastructure tests. By creating this Airflow DAG, everyone in the team that has access to Airflow can run those tests. This post is intended for testers who want to practice writing DAGs. 1. […]
Getting everyone to write infrastructure tests
In this post, we will outline our usual strategy to get an entire team to quickly fill testing holes – like writing infrastructure tests. Why? Because we find ourselves using this approach frequently at clients. Some context: Qxf2 engineers work with early stage products that neglected writing tests in favour of shipping quickly. This means, we almost always enter situations […]
Integrating CloudWatch Alarms with Skype
At Qxf2, our AWS environment hosts a multitude of applications, so monitoring the AWS services in real time is crucial for maintaining system reliability and performance. We’ve been using CloudWatch alarms to help us watch over our resources, these alarms used to send us emails whenever something went wrong. The problem was, it is often easy to miss these alerts […]
Auditing AWS cloud resources with Chef InSpec
Continuing from the preceding blog, ‘Auditing OS Level Resources with Chef InSpec’ which delved into utilizing the Chef InSpec open-source tool for testing individual servers via OS level resources. Now, we embark into the domain of Chef InSpec’s facility in cloud environments. Chef InSpec extends its support to cloud platforms like AWS, Azure, and GCP. Referring to insights shared in […]
Using Airflow to start and stop EC2 instances
In this post we will show you how to use Airflow to start and stop EC2 instances. Airflow is a popular open-source platform that engineering teams use to manage workflows. It uses a concept called Directed Acyclic Graphs (DAGs) which lets you chain multiple steps into a workflow. Airflow’s popularity is also partly due to an extensive library of operators. […]
LocalStack Issue: Security token included in the request is invalid
While I was engaged in creating tests for our URL Filter Lambda at Qxf2, I encountered a problem related to an invalid security token. You can access the code for our URL Filter on GitHub through the following link here. If you encounter an error message stating “The security token included in the request is invalid” while using LocalStack, it […]
Testing AWS Lambda locally using LocalStack and pytest
Testing loosely coupled microservices requires the use of diverse testing tools. Unlike monoliths, it is challenging to have a complete copy of the production system (System Under Test) for integration testing. Often, developers are hesitant to make changes in the pipeline due to uncertainty about potential downstream impacts. In such cases, it is valuable for developers to test integration components […]