From 7a1021668bd7b1b5c629dee92f585d25e140f39b Mon Sep 17 00:00:00 2001 From: ohmayr Date: Thu, 11 Jun 2026 16:27:27 +0000 Subject: [PATCH] feat: support parallel system test execution in generated noxfiles --- packages/gapic-generator/gapic/templates/noxfile.py.j2 | 5 +++++ .../tests/integration/goldens/asset/noxfile.py | 5 +++++ .../tests/integration/goldens/credentials/noxfile.py | 5 +++++ .../tests/integration/goldens/eventarc/noxfile.py | 5 +++++ .../tests/integration/goldens/logging/noxfile.py | 5 +++++ .../tests/integration/goldens/logging_internal/noxfile.py | 5 +++++ .../tests/integration/goldens/redis/noxfile.py | 5 +++++ .../tests/integration/goldens/redis_selective/noxfile.py | 5 +++++ .../integration/goldens/storagebatchoperations/noxfile.py | 5 +++++ 9 files changed, 45 insertions(+) diff --git a/packages/gapic-generator/gapic/templates/noxfile.py.j2 b/packages/gapic-generator/gapic/templates/noxfile.py.j2 index c240871b994e..8ff3ff7f4ed1 100644 --- a/packages/gapic-generator/gapic/templates/noxfile.py.j2 +++ b/packages/gapic-generator/gapic/templates/noxfile.py.j2 @@ -67,6 +67,7 @@ SYSTEM_TEST_STANDARD_DEPENDENCIES = [ "mock", "pytest", "google-cloud-testutils", + "pytest-xdist", ] SYSTEM_TEST_EXTERNAL_DEPENDENCIES: List[str] = [] SYSTEM_TEST_LOCAL_DEPENDENCIES: List[str] = [] @@ -345,6 +346,8 @@ def system(session): if system_test_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_path, @@ -353,6 +356,8 @@ def system(session): if system_test_folder_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_folder_path, diff --git a/packages/gapic-generator/tests/integration/goldens/asset/noxfile.py b/packages/gapic-generator/tests/integration/goldens/asset/noxfile.py index 93e185b59d11..f6aca66ed938 100755 --- a/packages/gapic-generator/tests/integration/goldens/asset/noxfile.py +++ b/packages/gapic-generator/tests/integration/goldens/asset/noxfile.py @@ -74,6 +74,7 @@ "mock", "pytest", "google-cloud-testutils", + "pytest-xdist", ] SYSTEM_TEST_EXTERNAL_DEPENDENCIES: List[str] = [] SYSTEM_TEST_LOCAL_DEPENDENCIES: List[str] = [] @@ -337,6 +338,8 @@ def system(session): if system_test_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_path, @@ -345,6 +348,8 @@ def system(session): if system_test_folder_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_folder_path, diff --git a/packages/gapic-generator/tests/integration/goldens/credentials/noxfile.py b/packages/gapic-generator/tests/integration/goldens/credentials/noxfile.py index c991842b24ca..87f828deb7b3 100755 --- a/packages/gapic-generator/tests/integration/goldens/credentials/noxfile.py +++ b/packages/gapic-generator/tests/integration/goldens/credentials/noxfile.py @@ -74,6 +74,7 @@ "mock", "pytest", "google-cloud-testutils", + "pytest-xdist", ] SYSTEM_TEST_EXTERNAL_DEPENDENCIES: List[str] = [] SYSTEM_TEST_LOCAL_DEPENDENCIES: List[str] = [] @@ -337,6 +338,8 @@ def system(session): if system_test_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_path, @@ -345,6 +348,8 @@ def system(session): if system_test_folder_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_folder_path, diff --git a/packages/gapic-generator/tests/integration/goldens/eventarc/noxfile.py b/packages/gapic-generator/tests/integration/goldens/eventarc/noxfile.py index 1ec5368a9dd4..e4cb03c81d5c 100755 --- a/packages/gapic-generator/tests/integration/goldens/eventarc/noxfile.py +++ b/packages/gapic-generator/tests/integration/goldens/eventarc/noxfile.py @@ -74,6 +74,7 @@ "mock", "pytest", "google-cloud-testutils", + "pytest-xdist", ] SYSTEM_TEST_EXTERNAL_DEPENDENCIES: List[str] = [] SYSTEM_TEST_LOCAL_DEPENDENCIES: List[str] = [] @@ -337,6 +338,8 @@ def system(session): if system_test_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_path, @@ -345,6 +348,8 @@ def system(session): if system_test_folder_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_folder_path, diff --git a/packages/gapic-generator/tests/integration/goldens/logging/noxfile.py b/packages/gapic-generator/tests/integration/goldens/logging/noxfile.py index 448aec3ef2b0..cdaffc6ec0a2 100755 --- a/packages/gapic-generator/tests/integration/goldens/logging/noxfile.py +++ b/packages/gapic-generator/tests/integration/goldens/logging/noxfile.py @@ -74,6 +74,7 @@ "mock", "pytest", "google-cloud-testutils", + "pytest-xdist", ] SYSTEM_TEST_EXTERNAL_DEPENDENCIES: List[str] = [] SYSTEM_TEST_LOCAL_DEPENDENCIES: List[str] = [] @@ -337,6 +338,8 @@ def system(session): if system_test_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_path, @@ -345,6 +348,8 @@ def system(session): if system_test_folder_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_folder_path, diff --git a/packages/gapic-generator/tests/integration/goldens/logging_internal/noxfile.py b/packages/gapic-generator/tests/integration/goldens/logging_internal/noxfile.py index 448aec3ef2b0..cdaffc6ec0a2 100755 --- a/packages/gapic-generator/tests/integration/goldens/logging_internal/noxfile.py +++ b/packages/gapic-generator/tests/integration/goldens/logging_internal/noxfile.py @@ -74,6 +74,7 @@ "mock", "pytest", "google-cloud-testutils", + "pytest-xdist", ] SYSTEM_TEST_EXTERNAL_DEPENDENCIES: List[str] = [] SYSTEM_TEST_LOCAL_DEPENDENCIES: List[str] = [] @@ -337,6 +338,8 @@ def system(session): if system_test_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_path, @@ -345,6 +348,8 @@ def system(session): if system_test_folder_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_folder_path, diff --git a/packages/gapic-generator/tests/integration/goldens/redis/noxfile.py b/packages/gapic-generator/tests/integration/goldens/redis/noxfile.py index d860093c9653..42ed1bf5008b 100755 --- a/packages/gapic-generator/tests/integration/goldens/redis/noxfile.py +++ b/packages/gapic-generator/tests/integration/goldens/redis/noxfile.py @@ -74,6 +74,7 @@ "mock", "pytest", "google-cloud-testutils", + "pytest-xdist", ] SYSTEM_TEST_EXTERNAL_DEPENDENCIES: List[str] = [] SYSTEM_TEST_LOCAL_DEPENDENCIES: List[str] = [] @@ -337,6 +338,8 @@ def system(session): if system_test_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_path, @@ -345,6 +348,8 @@ def system(session): if system_test_folder_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_folder_path, diff --git a/packages/gapic-generator/tests/integration/goldens/redis_selective/noxfile.py b/packages/gapic-generator/tests/integration/goldens/redis_selective/noxfile.py index d860093c9653..42ed1bf5008b 100755 --- a/packages/gapic-generator/tests/integration/goldens/redis_selective/noxfile.py +++ b/packages/gapic-generator/tests/integration/goldens/redis_selective/noxfile.py @@ -74,6 +74,7 @@ "mock", "pytest", "google-cloud-testutils", + "pytest-xdist", ] SYSTEM_TEST_EXTERNAL_DEPENDENCIES: List[str] = [] SYSTEM_TEST_LOCAL_DEPENDENCIES: List[str] = [] @@ -337,6 +338,8 @@ def system(session): if system_test_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_path, @@ -345,6 +348,8 @@ def system(session): if system_test_folder_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_folder_path, diff --git a/packages/gapic-generator/tests/integration/goldens/storagebatchoperations/noxfile.py b/packages/gapic-generator/tests/integration/goldens/storagebatchoperations/noxfile.py index 9afec5aeae68..192e04cf9f0c 100755 --- a/packages/gapic-generator/tests/integration/goldens/storagebatchoperations/noxfile.py +++ b/packages/gapic-generator/tests/integration/goldens/storagebatchoperations/noxfile.py @@ -74,6 +74,7 @@ "mock", "pytest", "google-cloud-testutils", + "pytest-xdist", ] SYSTEM_TEST_EXTERNAL_DEPENDENCIES: List[str] = [] SYSTEM_TEST_LOCAL_DEPENDENCIES: List[str] = [] @@ -337,6 +338,8 @@ def system(session): if system_test_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_path, @@ -345,6 +348,8 @@ def system(session): if system_test_folder_exists: session.run( "py.test", + "-n", + "auto", "--quiet", f"--junitxml=system_{session.python}_sponge_log.xml", system_test_folder_path,