Angular 在bitbucket管道上运行e2e时出现故障
我正在尝试为使用angular cli开发的应用程序配置CI进程 目前,我设法让管道运行karma测试,我的问题是e2e(“angular cli的ng e2e”命令) 这是我的垃圾桶 _pipelines.yml:Angular 在bitbucket管道上运行e2e时出现故障,angular,docker,bitbucket,bitbucket-pipelines,Angular,Docker,Bitbucket,Bitbucket Pipelines,我正在尝试为使用angular cli开发的应用程序配置CI进程 目前,我设法让管道运行karma测试,我的问题是e2e(“angular cli的ng e2e”命令) 这是我的垃圾桶 _pipelines.yml: image: node:7.6.0 pipelines: default: - step: script: # Modify the commands below to build your repository. - npm install -g @
image: node:7.6.0
pipelines:
default:
- step:
script: # Modify the commands below to build your repository.
- npm install -g @angular/cli
- npm install
- ng test --singleRun=true
- ng e2e --env=prod
image: versys650/angular-cli-for-e2e-tests
pipelines:
default:
- step:
script: # Modify the commands below to build your repository.
- npm install
- ng test --singleRun=true
- export DISPLAY=:1
- Xvfb $DISPLAY -ac -screen 0 1280x1024x8 &
- ng e2e --env=prod
这是管道的输出:
[11:59:09] I/file_manager - creating folder /opt/atlassian/pipelines/agent/build/node_modules/protractor/node_modules/webdriver-manager/selenium
[11:59:10] I/update - chromedriver: unzipping chromedriver_2.29.zip
[11:59:10] I/update - chromedriver: setting permissions to 0755 for /opt/atlassian/pipelines/agent/build/node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.29
[11:59:10] I/launcher - Running 1 instances of WebDriver
[11:59:10] I/direct - Using ChromeDriver directly...
[11:59:10] E/launcher - Server terminated early with status 127
[11:59:10] E/launcher - Error: Server terminated early with status 127
at earlyTermination.catch.e (/opt/atlassian/pipelines/agent/build/node_modules/selenium-webdriver/remote/index.js:252:52)
at process._tickCallback (internal/process/next_tick.js:103:7)
From: Task: WebDriver.createSession()
at Function.createSession (/opt/atlassian/pipelines/agent/build/node_modules/selenium-webdriver/lib/webdriver.js:777:24)
at Function.createSession (/opt/atlassian/pipelines/agent/build/node_modules/selenium-webdriver/chrome.js:709:29)
at Direct.getNewDriver (/opt/atlassian/pipelines/agent/build/node_modules/protractor/lib/driverProviders/direct.ts:90:25)
at Runner.createBrowser (/opt/atlassian/pipelines/agent/build/node_modules/protractor/lib/runner.ts:225:39)
at q.then.then (/opt/atlassian/pipelines/agent/build/node_modules/protractor/lib/runner.ts:391:27)
at _fulfilled (/opt/atlassian/pipelines/agent/build/node_modules/protractor/node_modules/q/q.js:834:54)
at self.promiseDispatch.done (/opt/atlassian/pipelines/agent/build/node_modules/protractor/node_modules/q/q.js:863:30)
at Promise.promise.promiseDispatch (/opt/atlassian/pipelines/agent/build/node_modules/protractor/node_modules/q/q.js:796:13)
at ./node_modules/protractor/node_modules/q/q.js:556:49
at runSingle (/opt/atlassian/pipelines/agent/build/node_modules/protractor/node_modules/q/q.js:137:13)
at flush (/opt/atlassian/pipelines/agent/build/node_modules/protractor/node_modules/q/q.js:125:13)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
[11:59:10] E/launcher - Process exited with error code 199
看起来你是通过一个驱动程序启动chrome,但你没有安装chrome
chromedriver
不附带chrome本身
我不知道你会如何解决它,但尝试安装chrome,看看它是否对你有帮助 最终使用以下bitbucket-pipelines.yml使其运行:
image: node:7.6.0
pipelines:
default:
- step:
script: # Modify the commands below to build your repository.
- npm install -g @angular/cli
- npm install
- ng test --singleRun=true
- ng e2e --env=prod
image: versys650/angular-cli-for-e2e-tests
pipelines:
default:
- step:
script: # Modify the commands below to build your repository.
- npm install
- ng test --singleRun=true
- export DISPLAY=:1
- Xvfb $DISPLAY -ac -screen 0 1280x1024x8 &
- ng e2e --env=prod
希望它能帮助别人