API Testing FAQs
I've got a JSON response where I want to extract all book titles from the array by using JSON Path expression - $.store.book[*].title but I'm getting only the first title. WHY?
Loadmill uses a framework where only the first value gets retrieved in case you are using the * sign. Use the __jsonpath_all
function instead so your extractions will look this way:
I'm testing entity creation where entity Name should be unique. Can I assign a set of random letters to it?
Sure, create a parameter with using the __random_letters([length=10])
function for that:
Find more great functions on this page and more information about default parameters here.
I'm getting ID of my resource and I want to make sure it is in the format of UUID. How can I do that?
You can easily achieve that:
Extract the ID into a parameter by using JSONPath.
Create another parameter by using the extracted ID and function
__random_uuid()
. The output would be "true" if the ID is in the format of UUID. Else, it would be "false".
3. Now, assert the second parameter you've created earlier.
Is there a way to run an API test with a combination of values? In my case, I want to create tickets where each ticket has a specific type, there are 10 ticket types available.
There is a feature in Loadmill that allows to do that. First, create a CSV file containing all ticket types, like below:
Then, go to Loadmill, upload the file by using the "Import CSV" button within a test flow and use the "ticket_type" parameter in your request body:
Thus, when running the Test Suite, each test iteration will get a relevant ticket type from the CSV file. Find more information about using CSV files in API tests here.
Last updated