Có một vài cách bạn có thể làm điều đó.
Có: Tính năng của Jasmine Thông số kỹ thuật tập trung (2.2): http://jasmine.github.io/2.2/f Focused_specs.html
Thông số kỹ thuật tập trung sẽ làm cho nó để chúng là thông số kỹ thuật duy nhất chạy. Bất kỳ thông số kỹ thuật được tuyên bố với sự phù hợp được tập trung.
describe("Focused specs", function() {
fit("is focused and will run", function() {
expect(true).toBeTruthy();
});
it('is not focused and will not run', function(){
expect(true).toBeFalsy();
});
});
Tuy nhiên, tôi không thực sự thích ý tưởng chỉnh sửa các bài kiểm tra của mình (phù hợp và phù hợp) để chạy chúng một cách có chọn lọc. Tôi thích sử dụng một người chạy thử nghiệm như karma có thể lọc ra các bài kiểm tra bằng cách sử dụng một biểu thức thông thường.
Đây là một ví dụ sử dụng grunt .
$ grunt karma:dev watch --grep=mypattern
Nếu bạn đang sử dụng gulp (vốn là người chạy nhiệm vụ yêu thích của tôi), bạn có thể chuyển args thành gulp-karma với yargs và các mẫu khớp bằng cách đặt cấu hình của karma.
Kiểu như thế này:
var Args = function(yargs) {
var _match = yargs.m || yargs.match;
var _file = yargs.f || yargs.file;
return {
match: function() { if (_match) { return {args: ['--grep', _match]} } }
};
}(args.argv);
var Tasks = function() {
var test = function() {
return gulp.src(Files.testFiles)
.pipe(karma({ configFile: 'karma.conf.js', client: Args.match()}))
.on('error', function(err) { throw err; });
};
return {
test: function() { return test() }
}
}(Args);
gulp.task('default', ['build'], Tasks.test);
Xem ý chính của tôi: https://gist.github.com/rimian/0f9b88266a0f63696f21
Vì vậy, bây giờ, tôi có thể chạy một thông số kỹ thuật bằng cách sử dụng mô tả:
Chạy thử cục bộ của tôi: (Đã thực hiện 1 trong 14 (bỏ qua 13))
gulp -m 'triggers the event when the API returns success'
[20:59:14] Using gulpfile ~/gulpfile.js
[20:59:14] Starting 'clean'...
[20:59:14] Finished 'clean' after 2.25 ms
[20:59:14] Starting 'build'...
[20:59:14] Finished 'build' after 17 ms
[20:59:14] Starting 'default'...
[20:59:14] Starting Karma server...
INFO [karma]: Karma v0.12.31 server started at http://localhost:9876/
INFO [launcher]: Starting browser Chrome
WARN [watcher]: All files matched by "/spec/karma.conf.js" were excluded.
INFO [Chrome 42.0.2311 (Mac OS X 10.10.3)]: Connected on socket hivjQFvQbPdNT5Hje2x2 with id 44705181
Chrome 42.0.2311 (Mac OS X 10.10.3): Executed 1 of 14 (skipped 13) SUCCESS (0.012 secs / 0.009 secs)
[20:59:16] Finished 'default' after 2.08 s
Xem thêm: https://github.com/karma-runner/karma-jasmine