【问题标题】:How to make grunt run some tasks at a special point in time?如何让 grunt 在特定的时间点运行一些任务?
【发布时间】:2015-06-18 07:31:07
【问题描述】:

我正在使用 Grunt 运行 Jasmine 测试和 Nightwatch.js 测试。是否可以让 Grunt 在特定的时间点运行测试?例如,Grunt 可以在保存更改的代码时始终运行测试。或者 Grunt 可以总是在凌晨 1 点运行测试。这可能吗?如何实现?

【问题讨论】:

标签: javascript node.js testing gruntjs automated-tests


【解决方案1】:
  1. Grunt-contrib-watch 让您在检查的文件发生更改时执行一些任务。
  2. grunt-crontab 可以让你在特定的时间做一些任务,就像 crontab 一样。 例如在咕噜声设置中:

grunt-crontab 示例。

{
  "jobs" : [
    {
      "command": YOUR COMMAND,
      "schedule": "0 1 * * *",  //Every day's 1:00 A.M.
      "comments": YOUR COMMENTS.
    }
  ]
}

编辑: 目前 grunt-crontab 只是为你添加命令到 crontab,意味着它不能直接观察结果,最好的方法是使用 grunt-contrib-watch 来监控变化。

【讨论】:

  • 作为您的命令,我到底要写什么?例如'grunt jasminetest'?
  • 是的,但是你需要像cd <%= project.baseDir %> && grunt这样的命令,而grunt-crontab所做的就是:把命令放到crontab :P,这意味着你不能看结果是否jasminetest是否通过,也许你应该只使用 grunt-contrib-watch。
  • 这意味着我不能用它来测试,因为我看不到结果?
  • 是的,我测试过,它只是为你创建了一个crontab任务,所以除非你记录它,否则你看不到结果,但即使你记录它,你仍然需要查看日志自己,所以我建议不要使用grunt-crontab 进行测试。
猜你喜欢
  • 1970-01-01
  • 2013-02-23
  • 2013-03-22
  • 1970-01-01
  • 1970-01-01
  • 2020-09-21
  • 2023-01-29
  • 1970-01-01
  • 2013-12-21
相关资源
最近更新 更多