E2E带Spectron-Docker窗口的测试电子

E2E带Spectron-Docker窗口的测试电子,docker,electron,spectron,Docker,Electron,Spectron,我正在对运行在Electron内部的应用程序进行E2E测试,以使其能够在Jenkins的管道中运行。我将其放在运行windows服务(构建版本1903)映像的docker容器中。问题是chrome驱动程序在容器内崩溃 我使用这些依赖项(光谱和电子): 我得到一个错误: { Error: unknown error: Chrome failed to start: exited normally (unknown error: DevToolsActivePort file doesn't e

我正在对运行在Electron内部的应用程序进行E2E测试,以使其能够在Jenkins的管道中运行。我将其放在运行windows服务(构建版本1903)映像的docker容器中。问题是chrome驱动程序在容器内崩溃

我使用这些依赖项(光谱和电子):

我得到一个错误:

{ Error: unknown error: Chrome failed to start: exited normally
  (unknown error: DevToolsActivePort file doesn't exist)
  (The process started from chrome location C:\Users\rvlima\node_modules\spectron\lib\launcher.bat is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
  (Driver info: chromedriver=78.0.3904.11 (eaaae9de6b8999773fa33f92ce1e1bbe294437cf-refs/branch-heads/3904@{#86}),pla
tform=Windows NT 10.0.18362 x86_64)
    at new RuntimeError (C:\Users\rvlima\node_modules\webdriverio\build\lib\utils\ErrorHandler.js:143:12)
    at Request._callback (C:\Users\rvlima\node_modules\webdriverio\build\lib\utils\RequestHandler.js:318:39)
    at Request.self.callback (C:\Users\rvlima\node_modules\request\request.js:185:22)
    at Request.emit (events.js:198:13)
    at Request.EventEmitter.emit (domain.js:448:20)
    at Request.<anonymous> (C:\Users\rvlima\node_modules\request\request.js:1161:10)
    at Request.emit (events.js:198:13)
    at Request.EventEmitter.emit (domain.js:448:20)
    at IncomingMessage.<anonymous> (C:\Users\rvlima\node_modules\request\request.js:1083:12)
    at Object.onceWrapper (events.js:286:20)
    at IncomingMessage.emit (events.js:203:15)
    at IncomingMessage.EventEmitter.emit (domain.js:448:20)
    at endReadableNT (_stream_readable.js:1145:12)
    at process._tickCallback (internal/process/next_tick.js:63:19)
  details: undefined,
  message:
   'Client initialization failed after 10 attempts: RuntimeError Client initialization failed after 10 attempts: ',
  type: 'RuntimeError',
  seleniumStack:
   { type: 'UnknownError',
     message:
      'An unknown server-side error occurred while processing the command.',
     orgStatusMessage:
      'unknown error: Chrome failed to start: exited normally\n  (unknown error: DevToolsActivePort file doesn\'t exi
st)\n  (The process started from chrome location C:\\Users\\rvlima\\node_modules\\spectron\\lib\\launcher.bat is no l
onger running, so ChromeDriver is assuming that Chrome has crashed.)\n  (Driver info: chromedriver=78.0.3904.11 (eaaa
e9de6b8999773fa33f92ce1e1bbe294437cf-refs/branch-heads/3904@{#86}),platform=Windows NT 10.0.18362 x86_64)' } }
{错误:未知错误:Chrome启动失败:正常退出
(未知错误:DevToolsActivePort文件不存在)
(从chrome位置C:\Users\rvlima\node\u modules\spectron\lib\launcher.bat启动的进程不再运行,因此ChromeDriver假设chrome已崩溃。)
(驱动程序信息:chromedriver=78.0.3904.11(eaaae9de6b8999773fa33f92ce1e1bbe294437cf参考/分支机构负责人/3904{86}),pla
tform=Windows NT 10.0.18362 x86_64)
在新运行时出错(C:\Users\rvlima\node\u modules\webdrivero\build\lib\utils\ErrorHandler.js:143:12)
应请求。\回调(C:\Users\rvlima\node\u modules\webdrivero\build\lib\utils\RequestHandler.js:318:39)
at Request.self.callback(C:\Users\rvlima\node\u modules\Request\Request.js:185:22)
at Request.emit(events.js:198:13)
at Request.EventEmitter.emit(domain.js:448:20)
应请求。(C:\Users\rvlima\node\u modules\Request\Request.js:1161:10)
at Request.emit(events.js:198:13)
at Request.EventEmitter.emit(domain.js:448:20)
输入消息时。(C:\Users\rvlima\node\u modules\request\request.js:1083:12)
在Object.onceWrapper(events.js:286:20)
在IncomingMessage.emit(events.js:203:15)
在IncomingMessage.EventEmitter.emit(domain.js:448:20)
在endReadableNT(_stream_readable.js:1145:12)
在进程中。_tick回调(内部/process/next_tick.js:63:19)
详细信息:未定义,
信息:
'客户端初始化在10次尝试后失败:RuntimeError客户端初始化在10次尝试后失败:',
类型:“RuntimeError”,
硒粉:
{type:'未知错误',
信息:
“处理命令时发生未知的服务器端错误。”,
orgStatusMessage:
'未知错误:Chrome无法启动:正常退出\n(未知错误:DevToolsActivePort文件不存在
st)\n(从chrome位置C开始的进程:\\Users\\rvlima\\node\u modules\\spectron\\lib\\launcher.bat不是l
正在继续运行,因此ChromeDriver假定Chrome已崩溃。)\n(驱动程序信息:ChromeDriver=78.0.3904.11(eaaa
e9de6b8999773fa33f92ce1e1bbe294437cf参考文献/分支机构负责人/3904{86},平台=Windows NT 10.0.18362 x86}

另一点是,这在版本为1803的windows容器中工作,但不幸的是,我无法使用该版本,因为Jenkins机器使用的是最新版本的windows(1903)。

对于任何有相同问题的人,我找到了解决方案

问题是我使用的是windows服务核心映像,它在渲染chromium时有问题。所以,我需要让它工作,只是改变基本图像使用windows客户端,这样我就可以让它工作

{ Error: unknown error: Chrome failed to start: exited normally
  (unknown error: DevToolsActivePort file doesn't exist)
  (The process started from chrome location C:\Users\rvlima\node_modules\spectron\lib\launcher.bat is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
  (Driver info: chromedriver=78.0.3904.11 (eaaae9de6b8999773fa33f92ce1e1bbe294437cf-refs/branch-heads/3904@{#86}),pla
tform=Windows NT 10.0.18362 x86_64)
    at new RuntimeError (C:\Users\rvlima\node_modules\webdriverio\build\lib\utils\ErrorHandler.js:143:12)
    at Request._callback (C:\Users\rvlima\node_modules\webdriverio\build\lib\utils\RequestHandler.js:318:39)
    at Request.self.callback (C:\Users\rvlima\node_modules\request\request.js:185:22)
    at Request.emit (events.js:198:13)
    at Request.EventEmitter.emit (domain.js:448:20)
    at Request.<anonymous> (C:\Users\rvlima\node_modules\request\request.js:1161:10)
    at Request.emit (events.js:198:13)
    at Request.EventEmitter.emit (domain.js:448:20)
    at IncomingMessage.<anonymous> (C:\Users\rvlima\node_modules\request\request.js:1083:12)
    at Object.onceWrapper (events.js:286:20)
    at IncomingMessage.emit (events.js:203:15)
    at IncomingMessage.EventEmitter.emit (domain.js:448:20)
    at endReadableNT (_stream_readable.js:1145:12)
    at process._tickCallback (internal/process/next_tick.js:63:19)
  details: undefined,
  message:
   'Client initialization failed after 10 attempts: RuntimeError Client initialization failed after 10 attempts: ',
  type: 'RuntimeError',
  seleniumStack:
   { type: 'UnknownError',
     message:
      'An unknown server-side error occurred while processing the command.',
     orgStatusMessage:
      'unknown error: Chrome failed to start: exited normally\n  (unknown error: DevToolsActivePort file doesn\'t exi
st)\n  (The process started from chrome location C:\\Users\\rvlima\\node_modules\\spectron\\lib\\launcher.bat is no l
onger running, so ChromeDriver is assuming that Chrome has crashed.)\n  (Driver info: chromedriver=78.0.3904.11 (eaaa
e9de6b8999773fa33f92ce1e1bbe294437cf-refs/branch-heads/3904@{#86}),platform=Windows NT 10.0.18362 x86_64)' } }