| { |
| // Contains groups of flags with variants, use by browsers |
| flags: { |
| flag-group-1: { |
| // Create variants (2 x 2 = 4) by creating the product of multiple |
| // flags and values. |
| --js-flags: [ |
| null, // null => flag is not set |
| "--max-opt=1", |
| // "--max-opt=2", |
| // "--max-opt=4", |
| ], |
| --enable-fied-trial-config: [ |
| null, // null => flag is not set |
| "" // "" => flag is set without a value |
| ] |
| }, |
| // Define custom flag groups here (referenced by name): |
| chrome-custom: { |
| // Use strings to create arbitrary flag combinations |
| "deafult": "", |
| "experiment_1": "--enable-field-trial-config --disable-features=V8SlowHistograms", |
| "experiment_2": "--enable-field-trial-config --enable-features=V8SlowHistograms", |
| }, |
| |
| // ------------------------------------------------------------------------ |
| // Examples: |
| example-group-1: { |
| // This will result in 2 x 2 = 4 flag configurations that are run: |
| // |
| // 1. no flags (both entries have a `null` variant) |
| // 2. `--js-flags=--no-opt` |
| // 3. `--js-flags=--no-opt --enable-field-trial-config` |
| // 4. `--enable-field-trial-config` |
| --js-flags: [null, "--no-opt"], |
| --enable-field-trial-config: [null, ""] |
| }, |
| example-group-2: { |
| // This flag group creates 3 x 2 = 6 varaints: |
| // Use the empty string "" for flags without values |
| "--enable-fied-trial-config": "", |
| // A flag with multiple variants: |
| --js-flags: [ |
| null, // variant 1: null == flag is not set |
| "--no-opt --no-ic", // variant 2 |
| "--no-sparkplug", // variant 2 |
| ] |
| // Flag with two variants: unset and set |
| "--no-sandbox": [ |
| null, // variant 1: null => flag is not set |
| "", // variant 2: "" => flag is set without value |
| ] |
| }, |
| }, |
| |
| // -------------------------------------------------------------------------- |
| // Contains browser configs |
| browsers: { |
| "chrome-stable-with-flags": { |
| // For "path" you can use a path, browser name, or a versioned browser. |
| // See '--browser' option for all possible values. |
| path: "chrome-stable", |
| # Either the browsers key ("chrome-stable-with-flags") if no label |
| # is specified, otherwise the this label property ("custom-browser-label") |
| # is used. |
| label: "custom-browser-label", |
| flags: [ |
| // You can reference multiple flag-groups here, any name added to |
| // the 'flags' dict above can be used here. |
| "flag-group-1", |
| // More flag groups can be added, for instance "chrome-custom", and |
| // you get the product of all flag variants. |
| // You can also directly define fixed flags |
| // "--js-flags=--no-opt", |
| ] |
| } |
| }, |
| |
| // You can use either comments or other sections to hide configurations |
| // Supported browser names are: |
| // * Chrome: chrome-stable, chrome-beta, chrome-dev, chrome-canary |
| // * Edge: edge-stable, edge-beta, edge-dev, edge-canary |
| // * Safari: safari, safari-tp |
| // * Firefox: firefox-stable, firefox-dev, firefox-nightly |
| browsers-disabled: { |
| "chrome-stable": { |
| browser: "chrome-stable", // or any other name |
| flags: [ /* ... add your flag groups here */ ] |
| }, |
| "chromium-mac-local": { |
| path: "~/Documents/chromium/src/out/Release/Chromium.app", |
| // Use custom chromedriver binary for local builds: |
| driver: "~/Documents/chromium/src/out/Release/chromedriver" |
| flags: [ /* ... add your flag groups here */ ] |
| }, |
| "chrome-android-canary": { |
| browser: "chrome-canary", |
| driver: "adb", // Just adb for a single device |
| flags: [ /* ... add your flag groups here */ ] |
| }, |
| "chrome-android-canary-pixel": { |
| browser: "chrome-canary", |
| driver: { |
| type: "adb", |
| // Use unique name or serial number from `adb devices -l` |
| device_id: "Pixel_7_Pro" |
| } |
| flags: [ /* ... add your flag groups here */ ] |
| }, |
| "safari": { |
| browser: "safari", |
| }, |
| "safari-tech-preview": { |
| browser: "safari-tp", |
| }, |
| "safari-ios": { |
| browser: "safari", |
| driver: { |
| type: "ios", |
| // Use the device UUID, see "xcrun xctrace list devices" for avilable |
| // devices and simulators. |
| device_id: "00001234-AAAA-BBBB-1111-11AA22BB33DD" |
| } |
| } |
| } |
| } |