在bitbucketpipe道上运行e2e的麻烦

我试图configuration我的应用程序与angularcli开发CI进程。

目前我设法使pipe道运行业力testing,我的问题是与e2e(“ng e2e”命令angular-cli)

这里是我的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 

这里是输出pipe道:

 [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 

看来你正在通过驱动程序启动铬,但你没有安装铬。 chromedriver不会与铬本身。

我不知道你将如何解决它,但尝试在debugging环境中安装铬并看到它可以帮助你。

最后设法使用以下bitbucket-pipelines.yml来运行它:

  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 

希望它能帮助别人