This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

tester

Manage tests

skyramp tester

skyramp tester

Options inherited from parent commands

      --kube-insecure         enable insecure mode for interactions with Kubernetes clusters
  -p, --project-path string   path to Skyramp project folder (default ".")
  -v, --verbose count         verbose (-v or -vv)

SEE ALSO

  • skyramp - Command line tool to interact with Skyramp
  • curl - Execute a single http request in the running worker container
  • generate - Generate test configurations
  • start - Starts a test description in the running worker container
  • status - Shows all tests in progress in the running worker container
  • stop - Stops a test description in the running worker container

1 - curl

Execute a single http request in the running worker container

skyramp tester curl

skyramp tester curl <request file> [flags]

Options

  -a, --address string     ip:port of Skyramp worker
      --data string        request payload for curl execution
  -n, --namespace string   Kubernetes namespace where Skyramp worker resides

Options inherited from parent commands

      --kube-insecure         enable insecure mode for interactions with Kubernetes clusters
  -p, --project-path string   path to Skyramp project folder (default ".")
  -v, --verbose count         verbose (-v or -vv)

SEE ALSO

2 - generate

Generate test configurations

skyramp tester generate

skyramp tester generate

Examples

  skyramp tester generate --cluster-id cluster-id --namespace namespace --start-time "-5m" --telemetry-provider pixie
  skyramp tester generate --trace-file trace-file.json

Options

      --address string              destination address of tests
      --alias string                Kubernetes service / Docker alias name
      --api-schema string           path to API schema file, or URL (URL support for OpenAPI 3.x only)
      --cluster-id string           cluster id from telemetry provider
  -f, --force                       force create test configurations and overwrite existing files
  -g, --glyphs string               Specify the glyph combination to use: "1,2,3" - 1.Chinese 2.Cedilla 3.Emoji 4.Korean 5.German 6.French 7.Spanish 8.Russian 9.Control Char
      --language string             specify output language for Skyramp library code generation. Accepted values: "python" (default "YAML")
  -n, --namespace string            Kubernetes namespace where Skyramp worker resides
      --openai                      (experimental) use OpenAI to generate test values (the 'OPENAI_API_KEY' environment variable must be set with an OpenAI API token)
      --openai-model string         (experimental) Optional, GPT model to use for OpenAI (one of [gpt-3.5-turbo gpt-4]). Note that some models may not accessible based on the API token (default "gpt-3.5-turbo")
      --output-prefix string        prefix for generated files
      --port int                    port number for the service
      --start-time string           start time to retrieve traces from
      --telemetry-provider string   telemetry provider, currently only pixie is supported
      --trace-file string           trace file path

Options inherited from parent commands

      --kube-insecure         enable insecure mode for interactions with Kubernetes clusters
  -p, --project-path string   path to Skyramp project folder (default ".")
  -v, --verbose count         verbose (-v or -vv)

SEE ALSO

  • tester - Manage tests
  • graphql - Generate test configurations for Graphql protocol
  • grpc - Generate test configurations for gRPC protocol
  • rest - Generate test configurations for REST protocol
  • rest-protobuf - Generate test configurations for REST protocol with a Protobuf schema definition

2.1 - graphql

Generate test configurations for Graphql protocol

skyramp tester generate graphql

skyramp tester generate graphql [flags]

Options

      --graphql-url-path string   graphql http url path
      --graphql-ws-path string    graphql ws url path

Options inherited from parent commands

      --address string              destination address of tests
      --alias string                Kubernetes service / Docker alias name
      --api-schema string           path to API schema file, or URL (URL support for OpenAPI 3.x only)
      --cluster-id string           cluster id from telemetry provider
  -f, --force                       force create test configurations and overwrite existing files
  -g, --glyphs string               Specify the glyph combination to use: "1,2,3" - 1.Chinese 2.Cedilla 3.Emoji 4.Korean 5.German 6.French 7.Spanish 8.Russian 9.Control Char
      --kube-insecure               enable insecure mode for interactions with Kubernetes clusters
      --language string             specify output language for Skyramp library code generation. Accepted values: "python" (default "YAML")
  -n, --namespace string            Kubernetes namespace where Skyramp worker resides
      --openai                      (experimental) use OpenAI to generate test values (the 'OPENAI_API_KEY' environment variable must be set with an OpenAI API token)
      --openai-model string         (experimental) Optional, GPT model to use for OpenAI (one of [gpt-3.5-turbo gpt-4]). Note that some models may not accessible based on the API token (default "gpt-3.5-turbo")
      --output-prefix string        prefix for generated files
      --port int                    port number for the service
  -p, --project-path string         path to Skyramp project folder (default ".")
      --start-time string           start time to retrieve traces from
      --telemetry-provider string   telemetry provider, currently only pixie is supported
      --trace-file string           trace file path
  -v, --verbose count               verbose (-v or -vv)

SEE ALSO

  • generate - Generate test configurations

2.2 - grpc

Generate test configurations for gRPC protocol

skyramp tester generate grpc

skyramp tester generate grpc [flags]

Examples

  skyramp tester generate grpc --api-schema path/to/your.proto --alias my-service --port 8080 --service ProductService

Options

      --service string   proto service to utilize

Options inherited from parent commands

      --address string              destination address of tests
      --alias string                Kubernetes service / Docker alias name
      --api-schema string           path to API schema file, or URL (URL support for OpenAPI 3.x only)
      --cluster-id string           cluster id from telemetry provider
  -f, --force                       force create test configurations and overwrite existing files
  -g, --glyphs string               Specify the glyph combination to use: "1,2,3" - 1.Chinese 2.Cedilla 3.Emoji 4.Korean 5.German 6.French 7.Spanish 8.Russian 9.Control Char
      --kube-insecure               enable insecure mode for interactions with Kubernetes clusters
      --language string             specify output language for Skyramp library code generation. Accepted values: "python" (default "YAML")
  -n, --namespace string            Kubernetes namespace where Skyramp worker resides
      --openai                      (experimental) use OpenAI to generate test values (the 'OPENAI_API_KEY' environment variable must be set with an OpenAI API token)
      --openai-model string         (experimental) Optional, GPT model to use for OpenAI (one of [gpt-3.5-turbo gpt-4]). Note that some models may not accessible based on the API token (default "gpt-3.5-turbo")
      --output-prefix string        prefix for generated files
      --port int                    port number for the service
  -p, --project-path string         path to Skyramp project folder (default ".")
      --start-time string           start time to retrieve traces from
      --telemetry-provider string   telemetry provider, currently only pixie is supported
      --trace-file string           trace file path
  -v, --verbose count               verbose (-v or -vv)

SEE ALSO

  • generate - Generate test configurations

2.3 - rest

Generate test configurations for REST protocol

skyramp tester generate rest

skyramp tester generate rest [flags]

Examples

  skyramp tester generate rest --api-schema https://example.com/api/v1/openapi.yaml --alias my-service --port 8080 --tag users --paths /users

Options

      --endpoint-path string         the REST path that upgrades http to a websocket
      --negative-scenarios           generate negative test scenarios for REST endpoints (default true)
      --no-functional-scenarios      disable generating functional scenarios for REST endpoints
      --no-negative-scenarios        disable generating negative test scenarios for REST endpoints
      --path strings                 REST path to filter on. Can be used multiple times to filter on multiple paths.
      --paths string                 comma-separated list of REST paths to filter on (to be deprecated: use --path instead)
      --robot                        generate robot tests
      --sample-form-param strings    sample form parameter for REST endpoints in key=value format
      --sample-query-param strings   sample query parameter for REST endpoints in key=value format
      --sample-request string        path to API sample request file
      --tag string                   OpenAPI tag to filter on

Options inherited from parent commands

      --address string              destination address of tests
      --alias string                Kubernetes service / Docker alias name
      --api-schema string           path to API schema file, or URL (URL support for OpenAPI 3.x only)
      --cluster-id string           cluster id from telemetry provider
  -f, --force                       force create test configurations and overwrite existing files
  -g, --glyphs string               Specify the glyph combination to use: "1,2,3" - 1.Chinese 2.Cedilla 3.Emoji 4.Korean 5.German 6.French 7.Spanish 8.Russian 9.Control Char
      --kube-insecure               enable insecure mode for interactions with Kubernetes clusters
      --language string             specify output language for Skyramp library code generation. Accepted values: "python" (default "YAML")
  -n, --namespace string            Kubernetes namespace where Skyramp worker resides
      --openai                      (experimental) use OpenAI to generate test values (the 'OPENAI_API_KEY' environment variable must be set with an OpenAI API token)
      --openai-model string         (experimental) Optional, GPT model to use for OpenAI (one of [gpt-3.5-turbo gpt-4]). Note that some models may not accessible based on the API token (default "gpt-3.5-turbo")
      --output-prefix string        prefix for generated files
      --port int                    port number for the service
  -p, --project-path string         path to Skyramp project folder (default ".")
      --start-time string           start time to retrieve traces from
      --telemetry-provider string   telemetry provider, currently only pixie is supported
      --trace-file string           trace file path
  -v, --verbose count               verbose (-v or -vv)

SEE ALSO

  • generate - Generate test configurations

2.4 - rest-protobuf

Generate test configurations for REST protocol with a Protobuf schema definition

skyramp tester generate rest-protobuf

skyramp tester generate rest-protobuf [flags]

Options

      --api-schemas strings           paths to API schema file
      --proto-path string             proto_path to use for parsing multiple protobuf files
      --protobuf-any stringToString   map of the location of a protobuf any type to the value to the type to replace the type (default [])
      --service string                proto service to utilize

Options inherited from parent commands

      --address string              destination address of tests
      --alias string                Kubernetes service / Docker alias name
      --api-schema string           path to API schema file, or URL (URL support for OpenAPI 3.x only)
      --cluster-id string           cluster id from telemetry provider
  -f, --force                       force create test configurations and overwrite existing files
  -g, --glyphs string               Specify the glyph combination to use: "1,2,3" - 1.Chinese 2.Cedilla 3.Emoji 4.Korean 5.German 6.French 7.Spanish 8.Russian 9.Control Char
      --kube-insecure               enable insecure mode for interactions with Kubernetes clusters
      --language string             specify output language for Skyramp library code generation. Accepted values: "python" (default "YAML")
  -n, --namespace string            Kubernetes namespace where Skyramp worker resides
      --openai                      (experimental) use OpenAI to generate test values (the 'OPENAI_API_KEY' environment variable must be set with an OpenAI API token)
      --openai-model string         (experimental) Optional, GPT model to use for OpenAI (one of [gpt-3.5-turbo gpt-4]). Note that some models may not accessible based on the API token (default "gpt-3.5-turbo")
      --output-prefix string        prefix for generated files
      --port int                    port number for the service
  -p, --project-path string         path to Skyramp project folder (default ".")
      --start-time string           start time to retrieve traces from
      --telemetry-provider string   telemetry provider, currently only pixie is supported
      --trace-file string           trace file path
  -v, --verbose count               verbose (-v or -vv)

SEE ALSO

  • generate - Generate test configurations

3 - start

Starts a test description in the running worker container

skyramp tester start

skyramp tester start <test description> [flags]

Examples

  skyramp tester start mytest -n my-namespace         # Start a test in the worker container running on Kubernetes
  skyramp tester start mytest -a localhost:35142      # Start a test in the worker container running on Docker

Options

  -a, --address string         ip:port of Skyramp worker
      --at-once int            set number of threads for load test, default is 1
  -c, --cluster string         cluster context for Skyramp
      --duration string        set duration for load test (e.g., 1s, 1m, 1h)
  -f, --fail                   return non zero for failed tests
      --html-report            generate an HTML test report in the "results" directory
      --local-images           load local container images
  -n, --namespace string       Kubernetes namespace where Skyramp worker resides
      --override strings       override values for skyramp objects
      --override-file string   override value file path for skyramp objects
      --set strings            set values for globalVars
      --stdout                 print results to stdout
      --truncate               truncate responses in terminal logging
      --worker-image string    worker image URL

Options inherited from parent commands

      --kube-insecure         enable insecure mode for interactions with Kubernetes clusters
  -p, --project-path string   path to Skyramp project folder (default ".")
  -v, --verbose count         verbose (-v or -vv)

SEE ALSO

4 - status

Shows all tests in progress in the running worker container

skyramp tester status

skyramp tester status <test description> [flags]

Options

  -a, --address string     ip:port of Skyramp worker
  -c, --cluster string     cluster context for Skyramp
      --id string          tester id
  -n, --namespace string   Kubernetes namespace where Skyramp worker resides

Options inherited from parent commands

      --kube-insecure         enable insecure mode for interactions with Kubernetes clusters
  -p, --project-path string   path to Skyramp project folder (default ".")
  -v, --verbose count         verbose (-v or -vv)

SEE ALSO

5 - stop

Stops a test description in the running worker container

skyramp tester stop

skyramp tester stop <test description> [flags]

Options

  -a, --address string     ip:port of Skyramp worker
  -c, --cluster string     cluster context for Skyramp
      --id string          tester id
  -n, --namespace string   Kubernetes namespace where Skyramp worker resides

Options inherited from parent commands

      --kube-insecure         enable insecure mode for interactions with Kubernetes clusters
  -p, --project-path string   path to Skyramp project folder (default ".")
  -v, --verbose count         verbose (-v or -vv)

SEE ALSO