API for QA candidates testing
QA Test API is a simple API to create and consult Users with simple data.
The objective is evaluate QAs in API testing, test cases and bug reports.
{
"name": "QA Candidate", // name
"cpf": "780.443.260-73", // CPF with dots (.) and dash (-) with verification digit
"email": "[email protected]", // email
"birthday": "1990-01-01" // date in ISO 8601 format
}
Result: HTTP Status 201 -> Created HTTP Header Location -> ID of the created resource
Important: There is a proposital bug that returns HTTP 501 eventually. To deactivate this feature, send the adicional parameter no_bug
with any value.
Returns the list of all users
Returns the user by his id
given Location header when created.
- If candidate knows how to automate tests
- If candidate knows about API (we assume this kind of candidate knows screen Automation as well)
- Test cases: Good paths, Bad baths, how it is described, etc...
- If candidate finds easy bugs
- If candidate finds hard bugs
- How candidate reports bugs
We inserted some bugs that we hope the candidate may find:
- (Easy level) When an invalid CPF is taken, API returns HTTP Status 500
- (Easy level) API accepts email with invalid format (not [email protected])
- (Easy level) Name without maximium value
- (Easy level) 2 Users can have same CPF
- (Medium level) Email size is 31, not 30 as error message says
- (Medium level) Birthday allows future dates
- (Hard level) Intermittent bug: in 1 of 5 command of Post#/users returns HTTP API 500 for no reason