Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for httpx #1718

Open
2 tasks done
thatguysimon opened this issue Mar 6, 2023 · 1 comment
Open
2 tasks done

Add support for httpx #1718

thatguysimon opened this issue Mar 6, 2023 · 1 comment
Assignees
Labels
Core: Transport Sending data to the tested app Difficulty: Intermediate Requires some experience Priority: Medium Planned for regular releases Type: Feature New functionalities or enhancements

Comments

@thatguysimon
Copy link

Checklist

Describe the bug
Starting with version 0.21.0 of Starlette, its TestClient implementation was changed to use httpx instead of requests.
This causes failure when trying to validate HTTP responses with Schemathesis.
This issue was raised in #1637, and a workaround was suggested in this comment, but a proper solution is still needed.

To Reproduce

  1. Upgrade to Starlette>=0.21.0 or FastAPI>=0.87.0
  2. Validate any schema with Schemathesis
@thatguysimon thatguysimon added Status: Needs Triage Requires initial assessment to categorize and prioritize Type: Bug Errors or unexpected behavior labels Mar 6, 2023
@Stranger6667 Stranger6667 changed the title [BUG] Missing support for httpx Add support for httpx Oct 12, 2023
@Stranger6667 Stranger6667 added Priority: Medium Planned for regular releases Type: Feature New functionalities or enhancements Core: Transport Sending data to the tested app Difficulty: Hard Complex, needs deep understanding and removed Type: Bug Errors or unexpected behavior Status: Needs Triage Requires initial assessment to categorize and prioritize labels Oct 12, 2023
@Stranger6667
Copy link
Member

It will be a really useful thing - one of the things that it will enable is more fine-grained control over timeouts. E.g. slow endpoints (that send the response back consistently but very slow) may cause issues because the code is blocking and there is no nice way to use a timeout there. So, I'd actually replace the underlying transport with httpx completely to avoid it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Core: Transport Sending data to the tested app Difficulty: Intermediate Requires some experience Priority: Medium Planned for regular releases Type: Feature New functionalities or enhancements
Projects
None yet
Development

No branches or pull requests

2 participants