[3.13] gh-137242: Add a --no-randomize option, and use it in Android CI (GH-138649) (#138685)

Adds a --no-randomize option to the CI runner, so that randomisation can be easily
disabled for --fast-ci and --slow-ci configurations on single-threaded testing platforms
like Android, iOS, and Emscripten.

---------
(cherry picked from commit 01895d233b)

Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Malcolm Smith <smith@chaquo.com>
This commit is contained in:
Russell Keith-Magee 2025-09-09 16:53:01 +08:00 committed by GitHub
parent 9a6137ad4b
commit 85649b769f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 40 additions and 7 deletions

View file

@ -737,12 +737,10 @@ def ci(context):
# Prove the package is self-contained by using it to run the tests.
shutil.unpack_archive(package_path, temp_dir)
# Arguments are similar to --fast-ci, but in single-process mode.
# Randomization is disabled because order-dependent failures are
# much less likely to pass on a rerun in single-process mode.
launcher_args = ["--managed", "maxVersion", "-v"]
test_args = [
"--single-process", "--fail-env-changed", "--rerun", "--slowest",
"--verbose3", "-u", "all,-cpu", "--timeout=600"
]
test_args = ["--fast-ci", "--single-process", "--no-randomize"]
run(
["./android.py", "test", *launcher_args, "--", *test_args],
cwd=temp_dir