While Go provides a testing package and a go test command, the former only offers basic testing capabilities. The package also has some drawbacks, such as missing assertions and increasing repetition with large-scale tests. As a result, several Go testing frameworks have been created to augment it. Go testing frameworks consist of tools and resources for creating and designing tests. Some of these frameworks incorporate the testing package and go test command, while others take a different approach.
Microservice is now the architecture of choice for many developers when crafting cloud-native applications. A microservices application is a collection of loosely coupled services that communicate with each other, enhancing collaboration, maintainability, scalability, and deployment. There are several options for enabling this communication between microservices. REST is the most popular among developers, sometimes used synonymously with APIs. However, gRPC can be a better alternative to REST.
Kubernetes has experienced rapid growth over the years, with a recent post from the Cloud Native Computing Foundation reporting a userbase increase of about 67% in just the past year. Kubernetes is a container orchestration platform that automates how containers are deployed, how they communicate, and how traffic is routed between them; it also scales configurations for both the containerized workloads and the underlying infrastructure that comprises the cluster.
Postman is a great tool for API testing during development. It’s GUI is simple to learn and ubiquitous. However, manually writing test cases for local development gets tedious fast if you have a lot of endpoints. Meticulously entering every detail for every use case takes forever. Also, if you get one HTTP Header or parameter wrong, it can take hours to diagnose. And even when it’s done, the API tests are almost immediately out of date because the API contract changes.
On Nov 13, 2019 Github made it’s CI/CD solution GitHub Actions generally available to the world. Since then tens of thousands of shared workflows have been published. It is now the default for most Github projects given how easy it is to integrate with an existing repo. Projects of all sizes have adopted it from our homegrown Terraform module to the Docker Cli. This is why at Speedscale we’ve published a template for how to use Speedscale in conjunction with GitHub Actions.
It's not for nothing that Kubernetes is a popular choice for running a cloud workload. It can be a powerful tool for orchestrating your applications. However, one thing that can often be a last thought in a production workflow, or maybe forgotten altogether, is load testing. It might be tempting to think that Kubernetes can handle it all. In many cases it can, but it's always smart to know how much your application can take. After reading this article, you'll be equipped to determine which tools would best serve you for load testing your application.
Speedscale is excited to join the AWS Partner Network (APN), the global community of partners who leverage Amazon Web Services (AWS) to build solutions and services for customers. AWS Partners are uniquely positioned to help businesses take full advantage of all that AWS has to offer and accelerate the journey to the cloud. As part of this achievement, Speedscale has completed the AWS Foundational Technical Review (FTR).
Will your software perform well during peak hours? Can it handle the load during sales periods? Is your infrastructure valid if you double your sales by the end of the year? These are just some of the questions that scalability testing can help you answer. Scalability testing evaluates the activity level of your application by upscaling and downscaling the number of users.