2015-07-21 190 views
0

我使用Grunt來運行Nightwatch測試。我創建了一個Grunt任務來運行在測試運行之前運行的快速代理服務器。然後我註冊了一個任務來首先運行這個代理,然後執行Nightwatch測試。現在我想註冊第二個運行不同快速服務器的Grunt任務,然後執行夜間測試。我如何定義第二個快速任務?這是我的快遞任務:定義兩次具有不同屬性的相同Grunt任務

express: { 
     options: { 
      // Override defaults here 
     }, 
     dev: { 
      options: { 
       script: 'server/server.js' 
      } 
     } 
    }, 

我象這樣開始:

grunt.registerTask('testnightwatch', [ 'express:dev' , 'nightwatch']); 

我需要的是這樣的:

express2: { 
     options: { 
      // Override defaults here 
     }, 
     dev: { 
      options: { 
       script: 'server/server2.js' 
      } 
     } 
    }, 
grunt.registerTask('testnightwatch', [ 'express2:dev' , 'nightwatch']); 

但是,這並不工作...有誰知道如何做到這一點?

+0

到底是哪咕嚕插件,您正在使用的呼嚕聲表達什麼? – Vishwanath

+0

我正在使用[grunt-express-server](https://github.com/ericclemmons/grunt-express-server) – Garrarufa

回答

0

我認爲你可以做這樣的事情:

express: { 
    express1 : { 
     options: {}, 
     dev: {} 
    }, 
    express2 : { 
     options: {}, 
     dev: {} 
    } 
} 

但是你要檢查,如果您的任務支持多任務。

+0

請問你能寫出我如何啓動其中一項快速任務?我從真實的文檔中得不到它。 – Garrarufa

+0

你可以嘗試類似的東西: grunt.registerTask('default','express:express1'); – amiceli

+0

嗯,那是行不通的... – Garrarufa

0

你可以這樣做:

express: { 
     options: { 
      // Override defaults here 
     }, 
     dev1: { 
      options: { 
       script: 'server/server.js' 
      } 
     }, 
     dev2: { 
      options: { 
       script: 'server/server2.js' 
      } 
     } 
    }, 

,並開始像這樣

grunt.registerTask('testnightwatch1', [ 'express:dev1' , 'nightwatch']); 

或本

grunt.registerTask('testnightwatch2', [ 'express:dev2' , 'nightwatch']); 
+0

我已經試過了。這不起作用。 – Garrarufa

+0

這是[grunt-express-server](https://github.com/ericclemmons/grunt-express-server)建議的內容。你可以用完全相同的配置重新嘗試一次嗎?否則,你可能想在他們的github回購中提出問題。 – Vishwanath

相關問題