2017-10-15 73 views
0

我有一個角度應用程序,我一直在使用量角器進行集成測試,可以使用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

+0

我還期待着爲同一 –

+0

溶液中添加套件,量角器文件的建議如下,然後運行NG E2E --suite = Dan

回答

1

您可以套件添加到您的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

+0

我想補充的評價是對的角度建議命令執行不工作...我所做的是運行e2e --suite =登錄....它的工作原理。但是有趣的是,之後顯示的文本顯示「選項'--suite'沒有在e2e命令中註冊。運行'ng e2e --help'獲取支持的選項列表。 」...但它仍然工作。 – Dan

0

登錄測試,您可以利用一飲而盡與yargs點擊此處(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',] 
    },