title: What is the correct config settings to automate test in parallel using Protractor?
body: <p>Here is my settings. Is there a correct setting for angular/non-angular application test in parallel? Sometimes, either my firefox or chrome hangs while the other one is running. Is it the <strong>ignoreSynchronization</strong> suppose to be set to <strong>true</strong> and <strong>waitForAngular</strong> to be <strong>false</strong>? I feel like there is too much time syncing problem that is causing one of the browsers to hang?</p>
  
  <pre><code>exports.config = {
      seleniumAddress: 'http://localhost:4444/wd/hub',
      getPageTimeout: 600000,
      allScriptsTimeout: 500000,
      defaultTimeoutInterval: 30000,
      framework: 'custom',
      // path relative to the current config file
      frameworkPath: require.resolve('protractor-cucumber-framework'),
      multiCapabilities:
      [{
        'browserName': 'firefox',
        specs: 'features/firefox/*.feature',
      },
      {
        'browserName': 'chrome',
        specs: 'features/chrome/*.feature',
      }],
      maxSessions: 2,
      baseUrl: 'https://localhost:8080',
      cucumberOpts: {
        strict: true,
        require: [
          'hooks/hooks.js',
          'specs/*Spec.js'
        ],
        tags: [
          "@runThis", 
          "~@ignoreThis"
        ],
        profile: false,
        format: 'json:./e2e/reports/cucumber-report.json',
        resultJsonOutputFile: './e2e/reports/cucumber-report.json'
      },
      beforeLaunch: function() {
        const fs = require('fs');
        const path = require('path');
  
        const directory = './e2e/reports';
  
        //cleans up the json results from the previous build when using node flake
        fs.readdir(directory, (err, files) =&gt; {
          if (err) throw err;
  
          for (const file of files) {
            fs.unlink(path.join(directory, file), err =&gt; {
              if (err) throw err;
            });
          }
        });
      },
      onPrepare: function() {
        var chai = require('chai');
        chai.use(require('chai-as-promised'));
        global.expect = chai.expect;
        browser.ignoreSynchronization = true;
        browser.manage().window().maximize();
        browser.waitForAngular(false);           
        browser.manage().timeouts().implicitlyWait(30000); 
  
      },
      ghostMode:false
  }
  
  </code></pre>