Package Usage: go: github.com/iris-contrib/httpexpect/v2
Package httpexpect helps with end-to-end HTTP and REST API testing.
See example directory:
There are two common ways to test API with httpexpect:
The second approach works only if the server is a Go module and its handler can
be imported in tests.
Concrete behaviour is determined by Client implementation passed to Config struct.
If you're using http.Client, set its Transport field (http.RoundTriper) to one of
the following:
Note that http handler can be usually obtained from http framework you're using.
E.g., echo framework provides either http.Handler.
You can also provide your own implementation of RequestFactory (creates http.Request),
or Client (gets http.Request and returns http.Response).
If you're starting server from tests, it's very handy to use net/http/httptest.
Whenever values are checked for equality in httpexpect, they are converted
to "canonical form":
This is equivalent to subsequently json.Marshal() and json.Unmarshal() the value
and currently is implemented so.
When some check fails, failure is reported. If non-fatal failures are used
(see Reporter interface), execution is continued and instance that was checked
is marked as failed.
If specific instance is marked as failed, all subsequent checks are ignored
for this instance and for any child instances retrieved after failure.
Example:
If you want to be informed about every asserion made, successful or failed, you
can use AssertionHandler interface.
Default implementation of this interface ignores successful assertions and reports
failed assertions using Formatter and Reporter objects.
Custom AssertionHandler can handle all assertions (e.g. dump them in JSON format)
and is free to use or not to use Formatter and Reporter in its sole discretion.
8 versions
Latest release: over 1 year ago
92 dependent packages
View more package details: https://packages.ecosystem.code.gouv.fr/registries/proxy.golang.org/packages/github.com/iris-contrib/httpexpect/v2