"username": "testuser", you use variables like "username": "{{username}}". You then feed a table of data into the test runner.users.csv)username,email,password,expected_status
valid_user,valid@email.com,Pass123!,201
short_pass,valid2@email.com,123,400
bad_email,notanapemail,Pass123!,400
long_user,user_with_very_long_name_check_limits@email.com,Pass123!,201Note: The headers ( username,
POST /users), replace the hardcoded values with variables:{
"username": "{{username}}",
"email": "{{email}}",
"password": "{{password}}"
}Response.status.code Equals {{expected_status}}users.csv file.See details: Data-Driven Testing
valid_user and expects a 201, which should pass. Iteration 2 uses short_pass, which is invalid. Since we configured the expected status to be 400, the test passes because the API correctly rejected the bad data.expected_status), put your success criteria IN the data file. This allows one test script to handle both positive and negative tests.