[3.15] gh-152548: Add a test.support.isolation.runInSubprocess() decorator (GH-152551) - #154780
Open
miss-islington wants to merge 1 commit into
Open
[3.15] gh-152548: Add a test.support.isolation.runInSubprocess() decorator (GH-152551)#154780miss-islington wants to merge 1 commit into
miss-islington wants to merge 1 commit into
Conversation
…ator (pythonGH-152551) Run a test in a fresh interpreter subprocess, so that it does not share global or interpreter state with the rest of the test run. It can decorate a test method (only that method runs in a subprocess) or a TestCase subclass (the whole class runs in one subprocess, with its setUpClass()/setUp()/tearDown()/ tearDownClass() running there rather than in the parent). Failures, errors and skips, including those of individual subtests, are reported for the test; a failure or an error shows the original subprocess traceback. The subprocess inherits the parent's resource, memory, verbosity and failfast configuration, so that requires_resource(), bigmemtest() and similar behave the same in both processes. A decorated test is skipped where subprocesses are unavailable, since it must spawn one. The test.support.isolation.runningInSubprocess flag is true in the subprocess, so that fixtures can choose what to run there. (cherry picked from commit bde526d) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This was referenced Jul 27, 2026
Documentation build overview
305 files changed ·
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Run a test in a fresh interpreter subprocess, so that it does not share global
or interpreter state with the rest of the test run. It can decorate a test
method (only that method runs in a subprocess) or a TestCase subclass (the
whole class runs in one subprocess, with its setUpClass()/setUp()/tearDown()/
tearDownClass() running there rather than in the parent).
Failures, errors and skips, including those of individual subtests, are
reported for the test; a failure or an error shows the original subprocess
traceback. The subprocess inherits the parent's resource, memory, verbosity
and failfast configuration, so that requires_resource(), bigmemtest() and
similar behave the same in both processes. A decorated test is skipped where
subprocesses are unavailable, since it must spawn one.
The test.support.isolation.runningInSubprocess flag is true in the subprocess,
so that fixtures can choose what to run there.
(cherry picked from commit bde526d)
Co-authored-by: Serhiy Storchaka storchaka@gmail.com
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com