2.1 KiB
YAML Runner
If there is a running web service that needs to be tested and
creating a test loader with ~gabbi.driver.build_tests
is either inconvenient or
overkill it is possible to run YAML test files directly from the command
line with the console-script gabbi-run
. It accepts YAML on
stdin
or as multiple file arguments, and generates and runs
tests and outputs a summary of the results.
The provided YAML may not use custom fixtures
but otherwise uses the default format
. host
information is either
expressed directly in the YAML file or provided on the command line:
gabbi-run [host[:port]] < /my/test.yaml
or:
gabbi-run http://host:port < /my/test.yaml
To test with one or more files the following command syntax may be used:
gabbi-run http://host:port -- /my/test.yaml /my/other.yaml
Note
The filename arguments must come after a --
and all
other arguments (host, port, prefix, failfast) must come before the
--
.
Note
If files are provided, test output will use names including the name of the file. If any single file includes an error, the name of the file will be included in a summary of failed files at the end of the test report.
To facilitate using the same tests against the same application
mounted in different locations in a WSGI server, a prefix
may be provided as a second argument:
gabbi-run host[:port] [prefix] < /my/test.yaml
or in the target URL:
gabbi-run http://host:port/prefix < /my/test.yaml
The value of prefix will be prepended to the path portion of URLs that are not fully qualified.
Anywhere host is used, if it is a raw IPV6 address it should be
wrapped in [
and ]
.
If https
is used in the target, then the tests in the
provided YAML will default to ssl: True
.
If a -x
or --failfast
argument is provided
then gabbi-run
will exit after the first test failure.
Use -v
or --verbose
with a value of
all
, headers
or body
to turn on
verbosity <metadata>
for all tests being
run.