Merge pull request #6005 from sreecha/stress_exit_codes

Terminate with error exit code in case of any failure
pull/6054/head
Jan Tattermusch 9 years ago
commit 8cddd87738
  1. 4
      test/cpp/interop/stress_test.cc
  2. 4
      tools/run_tests/stress_test/README.md
  3. 4
      tools/run_tests/stress_test/STRESS_CLIENT_SPEC.md
  4. 3
      tools/run_tests/stress_test/run_on_gke.py

@ -98,11 +98,11 @@ DEFINE_string(test_cases, "",
" 'large_unary', 10% of the time and 'empty_stream' the remaining"
" 70% of the time");
DEFINE_int32(log_level, GPR_LOG_SEVERITY_DEBUG,
DEFINE_int32(log_level, GPR_LOG_SEVERITY_INFO,
"Severity level of messages that should be logged. Any messages "
"greater than or equal to the level set here will be logged. "
"The choices are: 0 (GPR_LOG_SEVERITY_DEBUG), 1 "
"(GPR_LOG_SEVERITY_INFO) and 2 (GPR_LOG_SEVERITY_ERROR.");
"(GPR_LOG_SEVERITY_INFO) and 2 (GPR_LOG_SEVERITY_ERROR)");
using grpc::testing::kTestCaseList;
using grpc::testing::MetricsService;

@ -63,8 +63,8 @@
The stress tests are launched by the following script (path is relative to GRPC root directory) :
`tools/run_tests/stress_test/run_stress_tests_on_gke.py`
The script has several parameters and you can find out more details by using the `--help` flag.
- `<grpc_root_dir>$ tools/run_tests/stress_test/run_stress_tests_on_gke.py --help`
You can find out more details by using the `--help` flag.
- `<grpc_root_dir>$ tools/run_tests/stress_test/run_on_gke.py --help`
> **Example**
> ```bash

@ -6,14 +6,14 @@ This document specifies the features a stress test client should implement in or
--------------
**1.** A stress test client should be able to repeatedly execute one or more of the existing 'interop test cases'. It may just be a wrapper around the existing interop test client. The exact command line arguments the client should support are listed in _Table 1_ below.
**2.** The stress test client must implement a metrics server defined by _[metrics.proto](https://github.com/grpc/grpc/blob/master/src/proto/grpc/testing/metrics.proto)_ and must expose _qps_ as a long-valued Gauge. The client can track the overall _qps_ in one Gauge or in multiple Gagues (for example: One per Channel or Stub).
**2.** The stress test client must implement a metrics server defined by _[metrics.proto](https://github.com/grpc/grpc/blob/master/src/proto/grpc/testing/metrics.proto)_ and must expose _qps_ as a long-valued Gauge. The client can track the overall _qps_ in one Gauge or in multiple Gauges (for example: One per Channel or Stub).
The framework periodically queries the _qps_ by calling the `GetAllGauges()` method (the framework assumes that all the returned Gauges are _qps_ Gauges) and uses this to determine if the stress test client is running or crashed or stalled.
> *Note:* In this context, the term _**qps**_ means _interop test cases per second_ (not _messages per second_ or _rpc calls per second_)
**Table 1:** Command line arguments that should be supported by the stress test client.
>_**Note** The current C++ [stress client](https://github.com/grpc/grpc/blob/master/test/cpp/interop/stress_test.cc) supports more flags than those listed here but those flags will soon be deprecated_|
>_**Note** The current C++ [stress client](https://github.com/grpc/grpc/blob/master/test/cpp/interop/stress_test.cc) supports more flags than those listed here but those flags will soon be deprecated._
Parameter | Description
----------------------|---------------------------------

@ -633,4 +633,5 @@ if __name__ == '__main__':
os.path.dirname(sys.argv[0]), '../../..'))
os.chdir(grpc_root)
run_tests(config)
if not run_tests(config):
sys.exit(1)

Loading…
Cancel
Save