Subunit Describe Calls Utility¶

subunit-describe-calls is a parser for subunit streams to determine what REST API calls are made inside of a test and in what order they are called.

Runtime Arguments¶

• --subunit, -s: (Optional) The path to the subunit file being parsed, defaults to stdin
• --non-subunit-name, -n: (Optional) The file_name that the logs are being stored in
• --output-file, -o: (Optional) The path where the JSON output will be written to. This contains more information than is present in stdout.
• --ports, -p: (Optional) The path to a JSON file describing the ports being used by different services
• --verbose, -v: (Optional) Print Request and Response Headers and Body data to stdout

Usage¶

subunit-describe-calls will take in either stdin subunit v1 or v2 stream or a file path which contains either a subunit v1 or v2 stream passed via the –subunit parameter. This is then parsed checking for details contained in the file_bytes of the –non-subunit-name parameter (the default is pythonlogging which is what Tempest uses to store logs). By default the OpenStack Kilo release port defaults (http://bit.ly/22jpF5P) are used unless a file is provided via the –ports option. The resulting output is dumped in JSON output to the path provided in the –output-file option.

Ports file JSON structure¶

{
"<port number>": "<name of service>",
...
}


Output file JSON structure¶

{
"full_test_name[with_id_and_tags]": [
{
"name": "The ClassName.MethodName that made the call",
"verb": "HTTP Verb",
"service": "Name of the service",
"url": "A shortened version of the URL called",
"status_code": "The status code of the response",