Bug 1553437 - Add cold-open talos DAMP test for jsdebugger, webconsole, netmonitor r=ochameau
authorJulian Descottes <jdescottes@mozilla.com>
Thu, 23 May 2019 08:41:19 +0000
changeset 475136 9216a8250cb834d0ed5d8da01265add23a006037
parent 475135 069c3b38d6fb7d6d31dd6584a9aaa3ea11eece73
child 475137 199eaff06ecd465e8cae54496369d147edb48f3e
push id36054
push userdvarga@mozilla.com
push dateThu, 23 May 2019 15:52:15 +0000
treeherdermozilla-central@199eaff06ecd [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersochameau
bugs1553437
milestone69.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1553437 - Add cold-open talos DAMP test for jsdebugger, webconsole, netmonitor r=ochameau Differential Revision: https://phabricator.services.mozilla.com/D32122
testing/talos/talos/tests/devtools/addon/content/damp-tests.js
testing/talos/talos/tests/devtools/addon/content/tests/debugger/cold-open.js
testing/talos/talos/tests/devtools/addon/content/tests/netmonitor/cold-open.js
testing/talos/talos/tests/devtools/addon/content/tests/webconsole/cold-open.js
--- a/testing/talos/talos/tests/devtools/addon/content/damp-tests.js
+++ b/testing/talos/talos/tests/devtools/addon/content/damp-tests.js
@@ -15,20 +15,43 @@
  * - {String} path: the path to the test file under
  *   testing/talos/talos/tests/devtools/addon/content/tests/
  * - {String} description: Test description
  * - {Boolean} disabled: set to true to skip the test
  * - {Boolean} cold: set to true to run the test only during the first run of the browser
  */
 
 module.exports = [
+  // The first cold-open test is *colder* than the other cold-open tests, it will also
+  // assess the impact of loading shared DevTools modules for the first time.
+  // This test will assert the impact of base loader/Loader.jsm modules loading,
+  // typically gDevtools/gDevToolsBrowser/Framework modules, while the others will mostly
+  // track panel-specific modules (Browser loader, but not only).
   {
     name: "inspector.cold-open",
     path: "inspector/cold-open.js",
-    description: "Measure first open toolbox on inspector panel",
+    description: "Measure first open toolbox on inspector panel (incl. shared modules)",
+    cold: true,
+  },
+  {
+    name: "debugger.cold-open",
+    path: "debugger/cold-open.js",
+    description: "Measure first open toolbox on debugger panel",
+    cold: true,
+  },
+  {
+    name: "webconsole.cold-open",
+    path: "webconsole/cold-open.js",
+    description: "Measure first open toolbox on webconsole panel",
+    cold: true,
+  },
+  {
+    name: "netmonitor.cold-open",
+    path: "netmonitor/cold-open.js",
+    description: "Measure first open toolbox on netmonitor panel",
     cold: true,
   },
   // Run all tests against "simple" document
   {
     name: "simple.webconsole",
     path: "webconsole/simple.js",
     description: "Measure open/close toolbox on webconsole panel against simple document",
   }, {
new file mode 100644
--- /dev/null
+++ b/testing/talos/talos/tests/devtools/addon/content/tests/debugger/cold-open.js
@@ -0,0 +1,22 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+"use strict";
+
+const { closeToolbox, testSetup, testTeardown, SIMPLE_URL } = require("../head");
+const { openDebuggerAndLog } = require("./debugger-helpers");
+
+const EXPECTED = {
+  sources: 1,
+  file: "simple.html",
+  sourceURL: SIMPLE_URL,
+  text: "This is a simple page",
+};
+
+module.exports = async function() {
+  await testSetup(SIMPLE_URL);
+  await openDebuggerAndLog("cold", EXPECTED);
+  await closeToolbox();
+  await testTeardown();
+};
new file mode 100644
--- /dev/null
+++ b/testing/talos/talos/tests/devtools/addon/content/tests/netmonitor/cold-open.js
@@ -0,0 +1,15 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+"use strict";
+
+const { openToolboxAndLog, closeToolbox, testSetup,
+        testTeardown, SIMPLE_URL } = require("../head");
+
+module.exports = async function() {
+  await testSetup(SIMPLE_URL);
+  await openToolboxAndLog("cold.netmonitor", "netmonitor");
+  await closeToolbox();
+  await testTeardown();
+};
new file mode 100644
--- /dev/null
+++ b/testing/talos/talos/tests/devtools/addon/content/tests/webconsole/cold-open.js
@@ -0,0 +1,15 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+"use strict";
+
+const { openToolboxAndLog, closeToolbox, testSetup,
+        testTeardown, SIMPLE_URL } = require("../head");
+
+module.exports = async function() {
+  await testSetup(SIMPLE_URL);
+  await openToolboxAndLog("cold.webconsole", "webconsole");
+  await closeToolbox();
+  await testTeardown();
+};