Here is the working code:

var webdriverio = require('webdriverio'); var browser = webdriverio.remote({desiredCapabilities: {browserName: 'chrome'}}); var assert = require('chai').assert; var fs = require('fs'); var parse = require('csv-parse'); describe('Prepare data, enter the site and search', function () { this.timeout(60000); var testData = []; it('should prepare data', function(done) { var prepareData = parse({delimiter: ';'}, function(error, data){ testData = data; }); fs.createReadStream('./data/rtk/testCodes.csv').pipe(prepareData); browser.call(done); }); it('should open browser', function(done) { browser .init() .url('http://ru.stackoverflow.com/') .call(done); }); }); 

Next, I need to open as many browser windows as there are elements in the testData array. In each of the windows you need to open a specific site.

I am writing the following code:

 var webdriverio = require('webdriverio'); var browser = webdriverio.remote({desiredCapabilities: {browserName: 'chrome'}}); var assert = require('chai').assert; var fs = require('fs'); var parse = require('csv-parse'); describe('Prepare data, enter the site and search', function () { this.timeout(60000); var testData = []; it('should prepare data', function(done) { var prepareData = parse({delimiter: ';'}, function(error, data){ testData = data; }); fs.createReadStream('./data/rtk/testCodes.csv').pipe(prepareData); browser.call(done); }); it('should open browser', function(done) { testData.forEach(function(direction) { console.log(direction); browser .init() .url('http://mts.bol24.ru/') .call(done); }); }); 

Eventually:

console.log() displays the required number of elements, the required number of browser windows is launched, the site is opened in the first one, the rest are opened in the first ones

With what it can be connected?

    0