Concise, declarative, and easy-to-use end-to-end HTTP and REST API testing for Go (golang). Basically, httpexpect is a set of chainable builders for HTTP requests and assertions for HTTP responses and payload, on top of net/http and several utility packages. URL path construction, with simple string interpolation provided by go-interpol package. URL query parameters (encoding using go-querystring package). Headers, cookies, payload: JSON, urlencoded or multipart forms (encoding using form package), plain text. Custom reusable request builders and request transformers. Type-specific assertions, supported types: object, array, string, number, boolean, null, datetime. Regular expressions. Simple JSON queries (using subset of JSONPath), provided by jsonpath package. JSON Schema validation, provided by gojsonschema package.
Features
- Incrementally build HTTP requests
- Inspect HTTP responses
- Inspect response payload recursively
- URL path construction, with simple string interpolation provided by go-interpol package
- URL query parameters (encoding using go-querystring package)
- Headers, cookies, payload: JSON, urlencoded or multipart forms (encoding using form package), plain text