Here at HomeAdvisor, we've recently started taking a closer look at creating more automated tests around our growing suite of microservices. Our testing strategy has typically followed the software testing pyramid. Unit tests have always been the biggest part of our test approach, with integration and component level tests becoming more prevalent as we've migrated to microservices. But all of these testing strategies are within the application, and require almost as much maintenance as the code itself. While all of these testing strategies are just as important in microservices as they are in a software monolith, microservices usually come with some additional testing burden in the form of contract testing. This refers to the public facing API that a microservice offers, and comes with its own set of concerns beyond normal testing methodologies. In this post, we'll talk about how we use Swagger to automatically create API documentation for all of our microservices, so that we … [Read more...]
Api-Tite: An API Automation Framework
In recent years, building a comprehensive API automation framework has become crucial for large software systems. Our digital world has grown to include more and more devices that communicate with each other instead of humans, and most of this is driven by APIs. It's more important than ever to ensure organizations can release code with ease and confidence. Using an API automation framework ensures APIs are thoroughly tested prior to releasing, including boundary and error cases that are tedious to test with every code release. There are several benefits that such a framework will provide: Forces APIs to be documented consistently for both human and machine readability. Faster and more reliable than UI based automation such as Selenium. Can cover a great deal more scenarios that might be impossible to using UI Automation. As a Automation Test Engineer who specializes in REST API testing, I have seen and tried numerous strategies for API testing. In my experience, … [Read more...]