Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Symmetric API Testing by Aditya Mukerjee When implementing REST API servers and clients, testing is critical. Symmetric API testing is a design pattern that ensures compatibility between client and server with transparent tests. Testing APIs symmetrically reduces build times and code complexity, while simultaneously improving API stability. Help us caption & translate this video! http://amara.org/v/PssK/
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
The video titled 'Symmetric API Testing' features Aditya Mukerjee, a risk engineer at Stripe, discussing the importance of API design and testing, particularly focusing on the concept of symmetric API testing. Mukerjee begins by highlighting the evolution of API communication from an asymmetric model to one that promotes symmetry, where both clients and servers communicate using the same format and protocols. This approach simplifies development and testing, improving overall compatibility and stability. Key points discussed include: - The need for designing API endpoints right from the start, ensuring clarity in communication between clients and servers. - The significance of developing API clients alongside server code to gain insights into user experiences and interactions. - The variety of testing methodologies, especially the importance of integration tests which validate user experience and application interconnectivity, contrasting with unit tests that operate in isolation. - Risks associated with relying solely on unit tests, emphasizing the need for thorough integration testing, illustrated by a cautionary tale from NASA about a satellite docking failure due to overlooked environmental factors. - Examples of how to conduct symmetric API testing, including practical methodologies using libraries like Anaconda, which automate processes like rate limiting. - Techniques for capturing and reusing actual API responses to test applications without changing source code for every endpoint, thus promoting efficiency. - The critical role of interfaces in ensuring that both sides of the API communicate effectively, detailing how they can be designed to promote flexibility and robustness across multiple programming languages. - Finally, emphasizing the necessity of reflecting on interface contracts for symmetry and consistency in applications, with a reminder that these principles apply across various data formats including JSON and XML. In conclusion, Mukerjee stresses the importance of building and testing APIs symmetrically, which leads to improved functionality and reliability, while also allowing for easier maintenance and adaptation to changes in technology or client-server interactions.
Suggest modifications
Cancel