grpc/tools/run_tests
murgatroid99 eebb129fd3 Merge branch 'master' into uv_core_transport 2016-10-03 09:33:29 -07:00
..
dockerize prepare to enable ubsan in continuous build 2016-05-12 16:43:17 -07:00
performance Merge branch 'master' into uv_core_transport 2016-09-23 14:35:49 -07:00
sanity Merge remote-tracking branch 'google/v1.0.x' into master-upmerge-from-deep-under 2016-09-29 01:31:54 +02:00
stress_test PHP stress client in stress test framework 2016-06-14 12:54:02 -07:00
README.md address comments 2016-05-19 15:13:40 -07:00
antagonist.py
artifact_targets.py Merge branch 'v1.0.x' of https://github.com/grpc/grpc 2016-08-20 01:45:32 +02:00
build_artifact_csharp.bat add missing copyrights to .bat files 2016-05-13 10:50:29 -07:00
build_artifact_csharp.sh fix copyrights 2016-01-19 12:56:16 -08:00
build_artifact_node.bat Fixed earlier fix with the right command 2016-05-09 14:59:49 -07:00
build_artifact_node.sh Build Node 6 artifacts 2016-05-09 14:00:36 -07:00
build_artifact_php.sh php: use real artifact name in jenkins test 2016-09-21 16:50:43 -07:00
build_artifact_protoc.bat remove dead gmock link in protoc artifact build 2016-09-15 18:18:27 +02:00
build_artifact_protoc.sh build protoc artifacts on mac and linux 2016-02-19 09:16:42 -08:00
build_artifact_python.bat Add Python3.5 artifact targets 2016-08-15 10:57:47 -07:00
build_artifact_python.sh Add Python3.5 artifact targets 2016-08-15 10:57:47 -07:00
build_artifact_ruby.sh Load RVM on Linux too... 2016-02-06 07:47:32 +01:00
build_csharp.sh Update copyrights 2016-03-31 07:46:18 -07:00
build_csharp_coreclr.bat update path to C# test build by dotnet cli 2016-09-15 18:18:24 +02:00
build_csharp_coreclr.sh build everything 2016-07-31 03:27:54 +08:00
build_node.bat Simplify Node Windows tests slightly 2016-03-04 13:05:04 -08:00
build_node.sh Update copyrights 2016-03-31 07:46:18 -07:00
build_package_node.sh Don't get dependencies for Node grpc-health-check package build 2016-08-11 17:01:45 -07:00
build_package_php.sh php: simplify installation 2016-02-23 22:26:44 -08:00
build_package_python.sh add build_package collector targets for python and ruby 2016-02-05 18:17:55 -08:00
build_package_ruby.sh fix building ruby package 2016-06-24 17:05:45 -07:00
build_php.sh Update copyrights 2016-03-31 07:46:18 -07:00
build_python.sh Merge commit '4e57e8be3911e3030e2ccfd6478be75a3c2b0250' into p0-advance-protobuf-version 2016-08-05 17:17:45 -07:00
build_python_msys2.sh Make Python tests run on Windows 2016-07-08 12:36:15 -07:00
build_ruby.sh Update copyrights 2016-03-31 07:46:18 -07:00
build_stats_schema.json Tool for collecting build statistics. 2016-08-12 17:22:44 -07:00
build_stats_schema_no_matrix.json Tool for collecting build statistics. 2016-08-12 17:22:44 -07:00
configs.json Merge github.com:grpc/grpc into signal_handler 2016-05-18 15:06:21 -07:00
distribtest_targets.py dotnet CLI distribtest 2016-09-15 18:18:23 +02:00
dockerjob.py Make testing toolchain python 3.x compliant 2016-07-12 01:35:53 +02:00
interop_html_report.template Added test cases for Cloud gateway. 2016-02-08 10:15:36 -08:00
jobset.py Make testing toolchain python 3.x compliant 2016-07-12 01:35:53 +02:00
package_targets.py allow building all nugets on linux 2016-09-15 18:18:25 +02:00
port_server.py Make testing toolchain python 3.x compliant 2016-07-12 01:35:53 +02:00
post_tests_c.sh
post_tests_csharp.bat add missing copyrights to .bat files 2016-05-13 10:50:29 -07:00
post_tests_csharp.sh teach run_tests how to run C# tests with NUnitLite 2016-04-11 11:09:33 -07:00
post_tests_php.sh Update copyrights 2016-03-31 07:46:18 -07:00
post_tests_ruby.sh Update copyrights 2016-03-31 07:46:18 -07:00
pre_build_c.bat add missing copyrights to .bat files 2016-05-13 10:50:29 -07:00
pre_build_csharp.bat fix windows distribtest and add TODOs to remove hacks 2016-09-15 18:18:28 +02:00
pre_build_csharp.sh fix windows distribtest and add TODOs to remove hacks 2016-09-15 18:18:28 +02:00
pre_build_node.bat Ensure node and npm are in the path when running tests 2016-03-03 17:22:53 -08:00
pre_build_node.sh Update copyrights 2016-03-31 07:46:18 -07:00
pre_build_ruby.sh run bundle install from repo root 2016-04-18 17:16:48 -07:00
prepare_travis.sh
report_utils.py Revert "Generate html report for perf tests" 2016-07-19 11:19:12 -07:00
run_build_statistics.py More known errors. Mostly on macos. 2016-09-22 15:23:54 -07:00
run_interop_tests.py enable runing C# interop tests under coreclr 2016-09-15 18:18:26 +02:00
run_lcov.sh run_lcov.sh fix 2015-12-14 17:19:13 -08:00
run_node.bat Ensure node and npm are in the path when running tests 2016-03-03 17:22:53 -08:00
run_node.sh Merge branch 'master' into node_coverage_report_fix 2016-04-01 14:16:19 -07:00
run_performance_tests.py Merge github.com:grpc/grpc into outstanding_sweeps 2016-09-16 09:57:55 -07:00
run_python.sh Make running individual Python tests less painful 2016-07-01 10:18:45 -07:00
run_ruby.sh Bundled C core with Ruby library 2015-12-18 11:18:34 -08:00
run_stress_tests.py Make testing toolchain python 3.x compliant 2016-07-12 01:35:53 +02:00
run_tests.py Merge branch 'master' into uv_core_transport 2016-10-03 09:33:29 -07:00
sources_and_headers.json Merge branch 'master' into uv_core_transport 2016-10-03 09:33:29 -07:00
task_runner.py Make testing toolchain python 3.x compliant 2016-07-12 01:35:53 +02:00
tests.json Merge branch 'master' into uv_core_transport 2016-10-03 09:33:29 -07:00
watch_dirs.py

README.md

#Overview

This directory contains scripts that facilitate building and running tests. We are using python scripts as entrypoint for our tests because that gives us the opportunity to run tests using the same commandline regardless of the platform you are using.

#Unit tests (run_tests.py)

Builds gRPC in given language and runs unit tests. Use tools/run_tests/run_tests.py --help for more help.

######Example tools/run_tests/run_tests.py -l csharp -c dbg

######Useful options (among many others)

  • --use_docker Builds a docker container containing all the prerequisites for given language and runs the tests under that container.
  • --build_only Only build, do not run the tests.

#Interop tests (run_interop_tests.py)

Runs tests for cross-platform/cross-language interoperability. For more details, see Interop tests descriptions The script is also capable of running interop tests for grpc-java and grpc-go, using sources checked out alongside the ones of the grpc repository.

######Example tools/run_tests/run_interop_tests.py -l csharp -s c++ --use_docker (run interop tests with C# client and C++ server)

#Performance benchmarks (run_performance_tests.py)

Runs predefined benchmark scenarios for given languages. Besides the simple configuration of running all the scenarios locally, the script also supports orchestrating test runs with client and server running on different machines and uploading the results to BigQuery.

######Example tools/run_tests/run_peformance_tests.py -l c++ node

######Useful options

  • --regex use regex to select particular scenarios to run.

#Stress tests (run_stress_tests.py)

Runs modified interop tests clients and servers under heavy load for an extended period of time to discover potential stability issues. The tests are internally using Kubernetes to run the client and server on GKE and upload statistics to BigQuery.

tools/run_tests/stress_test/run_on_gke.py --gcp_project_id=<google-cloud-platform-project-id> --config_file=<path-to-config-file>

The directory tools/run_tests/stress_test/configs/ contains the config files for several scenarios

#Artifacts & Packages (task_runner.py)

A generalized framework for running predefined tasks based on their labels. We use this to building binary artifacts & distrib packages and testing them)

######Example tools/run_tests/task_runner.py -f python artifact linux x64 (build tasks with labels python, artifact, linux, and x64)