New Feature Testing: Minimal Impact API Testing for Real-Time Accommodation Bookings

Testing the New API Feature with Minimal Impact to Customers

Prev Question Next Question

Question

You work for a travel company that books accommodation for customers.

The company has decided to release a new feature that will allow customers to book accommodation in real-time through their API.

As a developer, you have planned to deploy this new feature.

How will you test the new API feature with minimal impact to customers?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

Answer: C.

Option A is incorrect because setting up the stage and informing your customers to change their endpoint will affect them by adding downtime on their side.

Option B is incorrect as the same as above but adding the usage plan only helps throttle requests.

It will still affect the customers.

Option C is CORRECT as enabling canary release will allow the developer to route a % of the traffic to the new API in a random order ensuring no one customer is affected too long.

Canary release is a part of a stage in the API Gateway console.

Option D is incorrect because promoting a canary release will make the deployment release, thereby having no delta between the canary and base stage.

If this option is selected, all customers will be affected.

Reference:

https://aws.amazon.com/about-aws/whats-new/2017/11/amazon-api-gateway-supports-canary-release-deployments/

Further, read.

https://docs.aws.amazon.com/apigateway/latest/developerguide/canary-release.html

The correct answer for this question is C. Create a stage and enable canary release.

Explanation: When deploying a new feature, it is crucial to ensure minimal impact to customers. A canary release is an effective way to do this. It involves releasing the new feature to a small subset of users first, and gradually increasing the percentage of users who receive the update over time.

Option A is incorrect because simply creating a new stage and informing customers to change their endpoint will not provide any protection against unexpected problems or errors that may occur during the deployment.

Option B is partially correct because attaching a usage plan can help manage access and usage of the new API. However, it still does not address the main concern of ensuring minimal impact to customers during the deployment.

Option D is incorrect because promoting a canary release means making the new feature available to all customers, which goes against the objective of minimizing impact.

Therefore, the best answer is C. By creating a new stage and enabling canary release, the new feature will be released gradually to a subset of users, allowing for monitoring and troubleshooting before a wider release. This approach ensures minimal impact to customers while allowing for the testing of the new feature in real-time.