Files
fission-src/test
Ta-Ching ChenandGitHub 71b587b58e Use ErrorHandler to handle proxy error (#1310)
The router prints error no matter what error type it is.
It's useful for troubleshooting, however, it also prints
the context canceled error, which means that users abort
request before reply and its really normal nowadays. Also,
the router returns 502 if error is not nil and may confused
client if it's a timeout error.

To solve these problems, this PR adds an error handler to
reverse proxy to examine the return error and change the
status code when needed.
2019-09-28 14:22:20 +08:00
..
2019-08-23 16:17:12 +08:00
2019-05-23 22:52:39 +08:00

Test Framework

Prerequisite tools

  • GNU parallel >= 20161222

If you want to run test on Mac, you also need to install GNU tools for command compatibility. With Homebrew, you can get them by:

   brew install coreutils findutils gnu-sed

Run a single test

cd $REPO/test

# run 'tests/test_node_hello_http.sh'
./tests/test_node_hello_http.sh

# if you want to preserve the resources that created by test for debug
export TEST_NOCLEANUP=yes
./tests/test_node_hello_http.sh

# run 'tests/test_environments/test_go_env.sh' with custom images
export GO_RUNTIME_IMAGE=my.docker.repo/go-env:test
./tests/test_environments/test_go_env.sh

Run tests in parallel

NOTE: Some tests will consume lots of resources and cause the test fail.

Example: Run tests with 4 concurrent jobs.

cd $REPO/test

export JOBS=4
./run_test.sh \
    tests/test_backend_poolmgr.sh \
    tests/test_node_hello_http.sh \
    tests/test_pass.sh \
    tests/test_specs/test_spec.sh

# The test output will be available in logs/
cat logs/test_backend_poolmgr.sh.log

# The summary report will be saved to logs/_recap
cat logs/_recap