2015-12-19 101 views
0

在我Gruntfile.js我有以下幾點:如何運行單個測試?

grunt.initConfig({ 
    remove: { 
     default_options: { 
      trace: false, 
      fileList: [ 
       'tests/browser/libs.js', 
       'tests/browser/tests.js' 
      ] 
     } 
    }, 
    browserify: { 
     test: { 
      src: ['src/*.js', 'tests/browser/editor.js'], 
      dest: 'tests/browser/single.js' 
     }, 
     tests: { 
      src: ['tests/browser/*.js'], 
      dest: 'tests/browser/tests.js' 
     }, 
     libs: { 
      src: ['src/*.js'], 
      dest: 'tests/browser/libs.js' 
     } 
    }, 
    mocha_phantomjs: { 
     all: ['tests/browser/*.html'] 
     , single: ['tests/browser/single.html'] 
    } 
    }); 

    grunt.registerTask('test-x', ['remove', 'browserify:test', 'mocha_phantomjs:single']); 
    grunt.registerTask('test-web', ['remove', 'browserify', 'mocha_phantomjs']); 

其中的想法是,我應該或者能夠運行所有測試或運行特定的測試文件...但我有問題吧:

$ grunt test-web

Running "remove:default_options" (remove) task

Running "browserify:test" (browserify) task Bundle tests/browser/single.js created.

Running "browserify:tests" (browserify) task Error: Cannot find module './lib/chai' from '/Users/ekkis/Development/tst/tests/browser' Warning: Error running grunt-browserify. Use --force to continue.

Aborted due to warnings.

我認爲問題是,當我在'test-web'定義中運行'browserify'時,除'tests'和'libs'之外,它運行'test'。所以我認爲我需要的是一種運行browserify:tests & libs的方法。

是可能的嗎?其他人如何處理這樣的事實,即有時候人們只想運行一個測試文件?

TIA - 電子

+0

可以運行 「NPM安裝--save-dev的釵」 ......然後重試?我認爲你在測試中加載了「chai」(https://www.npmjs.com/package/chai),但未安裝 – CyrilleGuimezanes

+0

它已安裝。我還沒有深入瞭解爲什麼該消息,但它的安裝 – ekkis

回答

0

想通了,我就可以有多個步驟:

grunt.registerTask('test-web', ['remove', 'browserify:tests', 'browserify:libs', 'mocha_phantomjs']);