diff options
author | Abseil Team <absl-team@google.com> | 2021-07-02 15:58:28 (GMT) |
---|---|---|
committer | Derek Mauro <dmauro@google.com> | 2021-07-07 18:34:08 (GMT) |
commit | 4cfd14984fb0ae68ae434ae6e82d67b75986adec (patch) | |
tree | 109c60182caf6b449a9acdec03a9105a2f0f6ed7 /googletest/include | |
parent | 4ec4cd23f486bf70efcc5d2caa40f24368f752e3 (diff) | |
download | googletest-4cfd14984fb0ae68ae434ae6e82d67b75986adec.zip googletest-4cfd14984fb0ae68ae434ae6e82d67b75986adec.tar.gz googletest-4cfd14984fb0ae68ae434ae6e82d67b75986adec.tar.bz2 |
Googletest export
gtest: Add a flag to only set up/tear down test environments once when repeating
Currently when running a test multiple times using `--gtest_repeat` the global
test environment(s) are set up and torn down for each iteration of the test.
When checking for flakes in tests that have expensive dependencies that are set
up in the test environment (subprocesses, external dependencies, etc) this can
become expensive.
To support finding flakes in tests that fit into this category, where the setup
phase is expensive but each test case is fast, allow callers to specify via
`--gtest_recreate_environments_when_repeating=false` that the test environments
should only be set up once, for the first iteration, and only torn down once, on
the last iteration. This makes running a test with `--gtest_repeat=1000` a much
faster and more pleasant experience.
PiperOrigin-RevId: 382748942
Diffstat (limited to 'googletest/include')
-rw-r--r-- | googletest/include/gtest/gtest.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/googletest/include/gtest/gtest.h b/googletest/include/gtest/gtest.h index 7a5d057..7e8e83f 100644 --- a/googletest/include/gtest/gtest.h +++ b/googletest/include/gtest/gtest.h @@ -138,6 +138,12 @@ GTEST_DECLARE_int32_(random_seed); // is 1. If the value is -1 the tests are repeating forever. GTEST_DECLARE_int32_(repeat); +// This flag controls whether Google Test Environments are recreated for each +// repeat of the tests. The default value is true. If set to false the global +// test Environment objects are only set up once, for the first iteration, and +// only torn down once, for the last. +GTEST_DECLARE_bool_(recreate_environments_when_repeating); + // This flag controls whether Google Test includes Google Test internal // stack frames in failure stack traces. GTEST_DECLARE_bool_(show_internal_stack_frames); |