In an API-first design lifecycle, you may be designing a new feature that depends on new API endpoints, but another team is responsible for implementing those endpoints, and aren't finished yet. Instead of being blocked by this, you can use a mock server, which will return sample data for requests to the API's endpoints, simulating the behavior of a real API. You can then use the mock server to test your API, before it's even implemented by the other team.
Before creating a gRPC mock server, you must have an API definition. This can either be an API in your workspace, a protobuf (protocol buffers) file you want to import, or you can create a new API using the Postman API Builder.
To create the gRPC mock server, do the following:
Create a new gRPC request. See Creating a new request for more information.
Select Enter URL.
Select Select a Protobuf API. This opens the Service Definition tab in your request.
In the Service Definition tab, you can enter the protobuf API in one of the following ways:
.proto
file.To learn more about selecting and importing protobuf APIs with the Service Definition tab, see Manage service definitions for gRPC requests in Postman.
After you have selected an API, select Enter URL again, and select Use Mock URL for (your API name).
The mock server will be automatically generated, and ready for use. The request URL will be a server name beginning with a random name and ending in .srv.pstmn.io
. Select a method, then select Invoke, and your request will receive responses with random values.
The mock server will dynamically update based on changes to your protobuf API. If changes are made to the protobuf API, requests to the mock server will automatically implement the changes.
Each time you make a request to the mock server, different random data will be returned. However, if you are writing tests, you might need to get the same response every time. This is possible using the seed metadata in each response. The seed is a random number in the response metadata. If you pass the seed in a request, the same response will be returned each time.
To pass seed data, do the following:
Make a gRPC request to a mock server.
In the Metadata pane of the response, find the value of the key-value pair named seed
.
In the Metadata pane of the request, set a key-value pair for seed
with the value of the seed.
Invoke the request again.
The mock servers in gPRC are independent of the mock server feature in Postman. See Configure and use a Postman mock server for more information about using mock servers for your other APIs.
Learn about gRPC request-response examples.
Last modified: 2024/06/25