Bug 1273986 - Execute reftests in random order; r?dbaron draft
authorGregory Szorc <gps@mozilla.com>
Wed, 18 May 2016 11:19:02 -0700
changeset 368423 05e3af78ab1724226b918736a874c01b27522921
parent 368365 c4449eab07d39e20ea315603f1b1863eeed7dcfe
child 521268 2cdc499453fb7aaa5ea4278ef8389ce93cb68721
push id18530
push userbmo:gps@mozilla.com
push dateWed, 18 May 2016 18:20:46 +0000
reviewersdbaron
bugs1273986
milestone49.0a1
Bug 1273986 - Execute reftests in random order; r?dbaron When tests are executed in the same order every time, undetected cross-test dependencies can be introduced, leading to unexpected passes or failures. This commit randomizes the execution of reftests in automation. This should hopefully lead to more test failures due to previously undetected ordering dependencies and possibly even race conditions. While this may upset people who care about seeing fewer test failures, running tests in random order is more indicative of real life browser behavior and thus could lead to higher browser quality and stability. MozReview-Commit-ID: 2VTBvK4Onh7
testing/mozharness/configs/unittests/linux_unittest.py
testing/mozharness/configs/unittests/mac_unittest.py
testing/mozharness/configs/unittests/win_unittest.py
--- a/testing/mozharness/configs/unittests/linux_unittest.py
+++ b/testing/mozharness/configs/unittests/linux_unittest.py
@@ -154,16 +154,17 @@ config = {
         "reftest": {
             "options": [
                 "--appname=%(binary_path)s",
                 "--utility-path=tests/bin",
                 "--extra-profile-file=tests/bin/plugins",
                 "--symbols-path=%(symbols_path)s",
                 "--log-raw=%(raw_log_file)s",
                 "--log-errorsummary=%(error_summary_file)s",
+                "--shuffle",
             ],
             "run_filename": "runreftest.py",
             "testsdir": "reftest"
         },
         "xpcshell": {
             "options": [
                 "--symbols-path=%(symbols_path)s",
                 "--test-plugin-path=%(test_plugin_path)s",
--- a/testing/mozharness/configs/unittests/mac_unittest.py
+++ b/testing/mozharness/configs/unittests/mac_unittest.py
@@ -105,17 +105,18 @@ config = {
             "run_filename": "runtestlist.py",
             "testsdir": "mozmill"
         },
         "reftest": {
             "options": [
                 "--appname=%(binary_path)s",
                 "--utility-path=tests/bin",
                 "--extra-profile-file=tests/bin/plugins",
-                "--symbols-path=%(symbols_path)s"
+                "--symbols-path=%(symbols_path)s",
+                "--shuffle",
             ],
             "run_filename": "runreftest.py",
             "testsdir": "reftest"
         },
         "xpcshell": {
             "options": [
                 "--symbols-path=%(symbols_path)s",
                 "--test-plugin-path=%(test_plugin_path)s",
--- a/testing/mozharness/configs/unittests/win_unittest.py
+++ b/testing/mozharness/configs/unittests/win_unittest.py
@@ -119,16 +119,17 @@ config = {
         "reftest": {
             "options": [
                 "--appname=%(binary_path)s",
                 "--utility-path=tests/bin",
                 "--extra-profile-file=tests/bin/plugins",
                 "--symbols-path=%(symbols_path)s",
                 "--log-raw=%(raw_log_file)s",
                 "--log-errorsummary=%(error_summary_file)s",
+                "--shuffle",
             ],
             "run_filename": "runreftest.py",
             "testsdir": "reftest"
         },
         "xpcshell": {
             "options": [
                 "--symbols-path=%(symbols_path)s",
                 "--test-plugin-path=%(test_plugin_path)s",