From c310689fdc94e8a15a3557fa0e9c7dd6bbff7afc Mon Sep 17 00:00:00 2001 From: Ravi Sawlani Date: Tue, 24 Oct 2023 14:12:46 +0530 Subject: [PATCH] remove upper bound for number of worker threads (#3930) * remove upper bound for number of worker threads * added test --- lib/runner/concurrency/index.js | 7 +------ test/src/cli/testParallelExecution.js | 19 ++++++++++++++++++- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/lib/runner/concurrency/index.js b/lib/runner/concurrency/index.js index fa64d842c7..f74b2ccbad 100644 --- a/lib/runner/concurrency/index.js +++ b/lib/runner/concurrency/index.js @@ -362,12 +362,7 @@ class Concurrency extends EventEmitter { let workers = require('os').cpus().length; if (isObject(test_workers) && isNumber(test_workers.workers)) { - if (workers < test_workers.workers) { - // eslint-disable-next-line no-console - Logger.warn(`Number of max workers is set to ${test_workers.workers} while the number of cpu cores is ${workers}. This can cause performance issues...\n`); - } else { - workers = test_workers.workers; - } + workers = test_workers.workers; } return workers; diff --git a/test/src/cli/testParallelExecution.js b/test/src/cli/testParallelExecution.js index 7039476279..63043a1838 100644 --- a/test/src/cli/testParallelExecution.js +++ b/test/src/cli/testParallelExecution.js @@ -12,6 +12,7 @@ describe('test Parallel Execution', function() { const allOpts = []; this.timeout(10000); + let workerCount; beforeEach(function() { mockery.enable({useCleanCache: true, warnOnUnregistered: false}); @@ -48,7 +49,7 @@ describe('test Parallel Execution', function() { this.tasks = []; this.index = 0; - + workerCount = maxWorkerCount; workerPoolArgv.push(args); } @@ -628,4 +629,20 @@ describe('test Parallel Execution', function() { assert.equal(client2.transport.settings.webdriver.port, 9999); }); + it('test number of work threads for parallel execution', function() { + + const CliRunner = common.require('runner/cli/cli.js'); + const runner = new CliRunner({ + reporter: 'junit', + config: path.join(__dirname, '../../extra/parallelism-count.json'), + env: 'default', + headless: true + }); + + runner.setup({}); + + return runner.runTests().then(_ => { + assert.strictEqual(workerCount, 4); + }); + }); });