2015-07-21 196 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

相关问题