在Bitbucket管道中运行Angular 2量角器

英属维尔京群岛

我是Bitbucket Pipelines的新手,因此我在尝试在构建中运行Angular 2应用程序的Protractor E2E测试时遇到了一些麻烦。我的bitbucket-pipelines.yml看起来像这样

image: adrianmarinica/bitbucket-pipelines-protractor

pipelines:
  default:
    - step:
        caches:
          - node
        script: # Modify the commands below to build your repository.
          - npm install
          - protractor protractor.conf.js

当所有依赖项都已安装并且量角器开始崩溃时,出现此错误

在此处输入图片说明

如何在本地计算机上成功完成测试?

英属维尔京群岛

为了在bitbucket管道上进行e2e测试,我必须对bitbucket-pipelines.yml,package.json和protractor.conf.js进行一些更改。

首先,bitbucket-pipelines.yml看起来像这样。我们使用了由adrianmarinica提供的docker镜像,而不是默认的节点镜像。

# You can specify a custom docker image from Docker Hub as your build environment.
image: adrianmarinica/bitbucket-pipelines-protractor

pipelines:
    branches:
        master:
            - step:
                caches:
                    - node
                script:
                    - npm install
                    - npm start
                    - protractor protractor.conf.js

然后,package.json看起来像这样

  "scripts": {
    ...
    "start": "ng serve &"
    ...
  }

此处的关键更改是启动命令中的“&”。这将在后台运行服务,从而使量角器命令被解雇。

最后,对protractor.conf.js进行一些调整

const { SpecReporter } = require('jasmine-spec-reporter');

exports.config = {
  allScriptsTimeout: 1800000,
  specs: [
    './e2e/**/*.e2e-spec.ts'
  ],
  getPageTimeout: 120000,
  capabilities: {
    'browserName': 'chrome',
    'chromeOptions': {
      'args': [
        '--no-sandbox',
        '--disable-gpu'
      ]
    }
  },
  useAllAngular2AppRoots: true,
  directConnect: true,
  baseUrl: 'http://localhost:4200/',
  framework: 'jasmine',
  jasmineNodeOpts: {
    showColors: true,
    defaultTimeoutInterval: 120000,
    print: function () { }
  },
  beforeLaunch: function () {
    require('ts-node').register({
      project: 'e2e/tsconfig.e2e.json'
    });
  },
  onPrepare() {
    jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
  }
};

如果您的测试在本地成功运行,则它们也应该在管道中,按照此配置,环境应该相同。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章