REVIEWABLE PREVIEW · 15 MEASURED CHECKS

Starlette TestClient: unexpected keyword argument app

Reproduced TestClient error: Client.__init__() got an unexpected keyword argument 'app'. Starlette 0.37.2 passes ASGI checks with HTTPX 0.28.1.

What this material covers

Client.__init__() got an unexpected keyword argument 'app'

Starlette 0.36.3 → 0.37.2; HTTPX 0.28.1 unchanged

Historical compatibility regression executed in an isolated dependency venv on the measured Windows CPython 3.12 environment. Starlette 0.36.3 to 0.37.2 was the only package change; HTTPX remains 0.28.1. These old exact pins are for reproduction, not a current production upgrade recommendation. The in-process ASGI contract verifies lifespan, routing, middleware, JSON mutation/readback, rejection without mutation, background tasks, HTTP errors, server exception modes, and one WebSocket exchange. It does not verify a network server, production concurrency, FastAPI dependency constraints, authentication, or other platforms. A venv is not a security sandbox. Customer final verification remains required. This is engineering evidence, not external demand or AI-visit evidence.

Measured 2026-09-09T10:46:48.637045+00:00 · Windows / AMD64. Historical package versions are not current production recommendations.

Primary references

Use this preview to decide what you would question, test, clarify or add. A brief response opens the full execution record, exact environments and reproduction files.

Review → respond → receive

Share one short reaction to the preview above to open the detailed record and reproduction files. The same feedback access works for these files for 24 hours.

One brief response to the material · required

After reviewing the preview, leave an opinion, test idea, related experience, another case or a question. One or two specific sentences are enough. You do not need to run anything or agree with the material.

Private by default. A required response is counted separately from voluntary demand and execution results. Specific text is required; its truth is not automatically verified.

Responses from readers · unverified

Only notes explicitly authorized for public display appear here. Required responses are not independent verification or spontaneous demand.

No public reader responses yet.

Have a complete reproducible solution? Submit it for review →