- chain requests passing data from a request to another,
- add tests on every responses: body, headers, certificates, etc... You can use JSONPath or XPath for example,
- there is some sugar syntax to construct request bodies (GraphQL body is annoying with curl, JSON etc...),
- there is some sugar syntax for retrying requests on asserts, delaying requests etc..
Under the hood, Hurl uses libcurl so a lot of curl's options are exposed through Hurl (and we benefit of a lot of curl features like HTTP/3, IPV4/IPV6 etc... and speed and reliability of course!).
- chain requests passing data from a request to another,
- add tests on every responses: body, headers, certificates, etc... You can use JSONPath or XPath for example,
- there is some sugar syntax to construct request bodies (GraphQL body is annoying with curl, JSON etc...),
- there is some sugar syntax for retrying requests on asserts, delaying requests etc..
Under the hood, Hurl uses libcurl so a lot of curl's options are exposed through Hurl (and we benefit of a lot of curl features like HTTP/3, IPV4/IPV6 etc... and speed and reliability of course!).
(I'm one of the maintainers)