2016-07-18 2 views
0

Gulp-Protractor 및 Gulp-Angular-Protractor는 args 및 구성 파일을 분도기에 전달할 수 있습니다.gulp.src를 사용하지 않고 Gulp-Angular-Protractor 실행

왜 내가 꿀꺽 마시기 위해 파일 목록을 전달해야합니까?

function runProtractor(done) { 
var params = process.argv; 
var args = params.length > 3 ? [params[3], params[4]] : []; 

gutil.log('arguments: ' + args); 

gulp.src(paths.e2eFiles) 
    .pipe(protractor({ 
     configFile: 'protractor.local.conf.js', 
     args: args, 
     'autoStartStopServer': true, 
     'debug': true 
    })) 
    .on('error', function (err) { 
     gutil.log(gutil.colors.red("An error occurred in protractor. Did you start the webdriver?")); 
     gutil.log(gutil.colors.red("Run cmd 'start gulp webdriver'.")); 
     gutil.log(gutil.colors.red('error: ' + err)); 
     // Make sure failed tests cause gulp to exit non-zero 
     throw err; 
    }) 
    .on('end', function() { 
     // Close browser sync server 
     browserSync.exit(); 
     done(); 
    }); 

} 문제는 각도기가 SRC의 스위트 룸하지만 파일을 실행하지 않는 것입니다. 각도기를 직접 호출하는 방법이 있습니까?

답변

1

gulp.src를 비워두고 specs 또는 suites를 args로 전달할 수 있습니다. 설명서는 설명이 잘되어 있지 않지만 gulp를 통해 arg로 시도한 구성 파일 인수를 전달할 수있었습니다. (나는 그것이 부울과 문자열이 아니기 때문에 나는 직접 연결에 문제가 있다고 생각한다).

gulp.task('e2e', function(cb) { 
    gulp.src([]).pipe(protractor({ 
     configFile: './conf/protractor.conf.js', 
     args: [ 
     '--baseUrl', 'http://localhost/', 
     '--maxSessions', 1, 
     '--suite', './specs/test-spec.js', 
     '--params.environment', 'development' 
     ] 
    })).on('error', function(e) { throw e }) 
    .on('end', cb) 
    }); 
}; 
관련 문제