I've got a basic web-component-tester project which works fine when I'm online.
If I switch to flight mode, it seems to fail to connect to Selenium, and instead gives a largely useless error message after about 60s delay: "Error: Unable to connect to selenium".
Edit 2: I've narrowed the problem down in the following question, but I'd still like to know how to avoid it with web-component-tester:
Edit: After some digging, it's something to do with DNS resolver somewhere beneath selenium-standalone failing while in flight mode, and not a lot to do with web-component-tester.
After inserting some debug logging into selenium-standalone, I tracked down the failure point to the check for whether Selenium is running. When online, this works fine, but when offline I get:
// check-started.js, logging the error inside the request() call:
Error: getaddrinfo ENOENT localhost:60435
    at Object.exports._errnoException (util.js:1022:11)
    at errnoException (dns.js:33:15)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:76:26)
The following seem to describe similar situations, but I don't see how to persuade selenium-standalone nor web-component-tester to specify an IP address family to even try the suggested solutions:
- https://github.com/nodejs/node/issues/4825
 - https://github.com/nodejs/node/issues/10290
 - node.js http.request and ipv6 vs ipv4
 
My original text is below.
The full error log and wct.conf.json are below. I can supply package.json and bower.json too if it would help.
I'm on Windows 10.
wct.conf.json:
{
  "verbose": true,
  "plugins": {
    "local": {
      "skipSeleniumInstall": true,
      "browsers": ["chrome"]
    },
    "sauce": {
      "disabled": true
    }
  }
}
error log:
> color-curve@0.0.1 test C:\Users\Dave\projects\infinity-components\color-curve
> standard "**/*.html" && wct -l chrome
step: loadPlugins
step: configure
hook: configure
Expanded local browsers: [ 'chrome' ] into capabilities: [ { browserName: 'chrome',
    version: '60',
    chromeOptions: 
     { binary: 'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe',
       args: [Object] } } ]
configuration: { suites: [ 'test/index.html' ],
  verbose: true,
  quiet: false,
  expanded: false,
  testTimeout: 90000,
  persistent: false,
  extraScripts: [],
  clientOptions: { root: '/components/', verbose: true },
  compile: 'auto',
  activeBrowsers: [ { browserName: 'chrome', version: '60', chromeOptions: [Object] } ],
  browserOptions: {},
  plugins: 
   { local: 
      { disabled: false,
        skipSeleniumInstall: true,
        browsers: [Object],
        seleniumArgs: [] },
     sauce: { disabled: true } },
  registerHooks: [Function: registerHooks],
  enforceJsonConf: false,
  webserver: 
   { hostname: 'localhost',
     _generatedIndexContent: '<!doctype html>\n<html>\n  <head>\n    <meta charset="utf-8">\n    <script>WCT = {"root":"/components/","verbose":true};</script>\n    <script>window.__generatedByWct = true;</script>\n    <script src="../web-component-tester/browser.js"></script>\n\n    <script src="../web-component-tester/data/a11ySuite.js"></script>\n</head>\n  <body>\n    <script>\n      WCT.loadSuites(["test/index.html"]);\n    </script>\n  </body>\n</html>\n' },
  root: 'C:\\Users\\Dave\\projects\\infinity-components\\color-curve',
  _: [],
  origSuites: [ 'test/' ] }
hook: prepare
hook: prepare:selenium
Starting Selenium server for local browsers
INFO - Selenium build info: version: '3.0.1', revision: '1969d75'
INFO - Launching a standalone Selenium Server
INFO::main: Logging initialized @222ms
INFO - Driver class not found: com.opera.core.systems.OperaDriver
INFO - Driver provider com.opera.core.systems.OperaDriver registration is skipped:
Unable to create new instances on this machine.
INFO - Driver class not found: com.opera.core.systems.OperaDriver
INFO - Driver provider com.opera.core.systems.OperaDriver is not registered
INFO - Driver provider org.openqa.selenium.safari.SafariDriver registration is skipped:
 registration capabilities Capabilities [{browserName=safari, version=, platform=MAC}] does not match the current platform WIN10
INFO:osjs.Server:main: jetty-9.2.15.v20160210
INFO:osjsh.ContextHandler:main: Started o.s.j.s.ServletContextHandler@100fc185{/,null,AVAILABLE}
INFO:osjs.ServerConnector:main: Started ServerConnector@2922e2bb{HTTP/1.1}{0.0.0.0:51126}
INFO:osjs.Server:main: Started @419ms
INFO - Selenium Server is up and running
INFO - Selenium build info: version: '3.0.1', revision: '1969d75'
INFO - Launching a standalone Selenium Server
INFO::main: Logging initialized @222ms
INFO - Driver class not found: com.opera.core.systems.OperaDriver
INFO - Driver provider com.opera.core.systems.OperaDriver registration is skipped:
Unable to create new instances on this machine.
INFO - Driver class not found: com.opera.core.systems.OperaDriver
INFO - Driver provider com.opera.core.systems.OperaDriver is not registered
INFO - Driver provider org.openqa.selenium.safari.SafariDriver registration is skipped:
 registration capabilities Capabilities [{browserName=safari, version=, platform=MAC}] does not match the current platform WIN10
INFO:osjs.Server:main: jetty-9.2.15.v20160210
INFO:osjsh.ContextHandler:main: Started o.s.j.s.ServletContextHandler@100fc185{/,null,AVAILABLE}
INFO:osjs.ServerConnector:main: Started ServerConnector@2922e2bb{HTTP/1.1}{0.0.0.0:51126}
INFO:osjs.Server:main: Started @419ms
INFO - Selenium Server is up and running
Error: Unable to connect to selenium