Modern QA2026Version Discovery — tiles
Log inJoin
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)