63 / 65 · 14 API Testing Fundamentals · API Versioning← prev⊞ allnext →☰ Read as one page
8.6Version Discovery
def test_api_exposes_available_versions(api, base_url):
"""API should document available versions."""
r = api.get("/")
if r.status_code == 200:
data = r.json()
# Some APIs list available versions at the root
if "versions" in data:
assert "v1" in data["versions"]
assert "v2" in data["versions"]
def test_unsupported_version_returns_error(api, base_url):
"""Requesting a non-existent version should return a clear error."""
r = api.get("/v99/users")
assert r.status_code in (400, 404)