如何将带有角度的量角器测试设置到单独的套件中?

时间:2017-10-15 17:16:49

标签: angular protractor

我有一个角度应用程序,我一直使用量角器进行可以使用ng e2e命令运行的集成测试。现在它被设置为运行命令,它只运行app.e2e-spec.ts的默认计划。我想在角度cli或量角器中配置运行不同计划(测试套件)的能力。因此,例如,我希望能够运行“ng e2e all”,例如运行贯穿整个站点的测试计划。或者“ng e2e login”运行仅测试登录的计划。我该怎么做呢?这就是角度项目中e2e文件夹的样子。 tsconfig.e2e.json是什么样的。

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/e2e",
    "baseUrl": "./",
    "module": "commonjs",
    "target": "es5",
    "types": [
      "jasmine",
      "jasminewd2",
      "node"
    ]
  }
}

enter image description here

2 个答案:

答案 0 :(得分:2)

您可以将套件添加到protractor.conf.js文件中。

suites: {
  login: './e2e/login/**/*.e2e-spec.ts',
  admin: './e2e/admin/**/*.e2e-spec.ts',
  guest: './e2e/guest/**/*.e2e-spec.ts'
}

然后使用protractor protractor.conf.js --suite login

运行登录测试

答案 1 :(得分:0)

您可以利用yargs利用gulp点击此处(https://www.npmjs.com/package/yargs

var args = require('yargs').argv;
gulp.task('e2e-test', ['webdriver_update'], function(cb) {
    gulp.src([]).pipe(gulpProtractor({
        configFile: './path/to/protractor.conf.js',
        args: [
            '--suite', args.suite
        ];
    })).on('error', function(e) {
        console.log(e);
    }).on('end', cb);
});

然后使用命令 -

gulp e2e-test --suite example
conf文件中的

套件标签是 -

suites:{
    example:['./test/e2e/specs/**/*Spec.js',]
  },