草庐IT

grunt-contrib-qunit

全部标签

javascript - Grunt Globbing 模式

实现以下目标需要什么模式。匹配.tmp目录下的所有html文件>匹配.tmp/views中的所有html文件及其所有子目录(递归到任意深度)这是在Grunt文件中注册livereload任务。我尝试了以下几种配置。它匹配.tmp中的所有文件,但不匹配.tmp/views中的所有文件也试过了,'.tmp/{,views/**/}*.html'但结果相同。livereload:{options:{livereload:LIVERELOAD_PORT},files:['.tmp/{,views/**}*.html']} 最佳答案 你应该能

javascript - 让 QUnit 按顺序运行测试

我使用qunit为我拥有的javascript代码编写了一系列测试。现在由于某种原因,我列表中的第一个测试将运行,然后列表中的最后一个测试运行,然后是倒数第二个、倒数第三个、倒数第四个等等……这对我的测试至关重要事情按照我的顺序运行。我尝试关闭该选项,其中qunit首先运行上次失败的测试,但它仍在这样做。有什么办法可以解决这个问题吗? 最佳答案 首先,弄清楚为什么您的测试必须按特定顺序运行。单元测试的全部意义在于测试是原子的,应该可以按任何顺序运行它们——如果你的测试套件不能做到这一点,你需要找出原因,因为它可能代表一个更大的问题。

javascript - 使用 grunt 对单个 javascript 文件进行 linting 时如何解决依赖关系?

我想将我的应用程序逻辑分成多个Javascript文件,以保持完整性和开发人员友好性,并存储在/src文件夹中。这些文件应该在构建过程中被检查并连接到/dist/app.js中。我在构建过程中使用grunt,因为它已经带有方便的lint和concat任务。+|-grunt.js|-readme|-vendors|-backbone.js|-src|-core.js|-user.js|-dist|-app.js我遇到了一个烦人的问题。我将backbone.js用于应用程序结构,我的大部分源文件都是从通过扩展Backbone.Model定义模型开始的。当检查这些文件时,JSHint提示说B

javascript - 在文件之间添加断行 Grunt - concat

我想知道当我们使用Gruntconcat连接文件时是否有办法在每个文件之间添加一行。因为文件末尾的一些内联注释导致我出错,当它们被合并时,注释也是下一个文件的第一行。实际上有点棘手,我正在手动删除这些评论,但如果我能明确避免这个问题,可能会更好。只需为每个文件添加一行concat可能会很棒。接下来我将使用Grunt-uglify删除评论和空格。 最佳答案 https://github.com/gruntjs/grunt-contrib-concat提到了separator选项,甚至给出了使用自定义分隔符的用法示例。这是他们的例子:g

javascript - 使用 qUnit 进行 Javascript 测试

我喜欢用于JavaScript单元测试的qUnit,并且已经成功地将它用于一个几乎完全是AJAX的大型Web托管平台。但是,我必须手动在浏览器中运行它,或者将其作为Windows计划任务运行,这并不理想。有没有人将jUnit测试作为自动化测试套件的一部分运行,就像您在(比如说)perl或Java中那样? 最佳答案 最简单的方法可能是使用Selenium2运行qUnit测试,来自JUnit测试。Selenium2在Firefox、IE、Chrome或它自己的HtmlDriver中打开网页,几乎可以用呈现的页面做任何事情,尤其是qUni

javascript - 使用 grunt js,如何观察 .coffee 文件的变化?

我是gruntjs的新手,这是我的简单gruntfile:/*globalmodule:false*/module.exports=function(grunt){//Projectconfiguration.grunt.initConfig({watch:{tasks:'coffee'},coffee:{compile:{files:{'js/javascript/*.js':['js/coffeescript/*.coffee']//1:1compile}}}});grunt.loadNpmTasks('grunt-contrib-coffee');//Defaulttask.gr

javascript - 如何使用 grunt-contrib-uglify 压缩 js 文件?

我正在运行一个grunt任务:uglify:{options:{report:'gzip'},all:{expand:true,flatten:true,cwd:'js/',src:['*.js','!*.min.js'],dest:'js/min',ext:'.min.js'}}在运行报告选项时,文件被压缩到一个文件中options:{report:'gzip'}我看到文件在gzip压缩后会明显变小,但输出文件没有gzip压缩,它们的大小与“缩小”报告中的一样。所以问题是,我如何配置uglify以gzip文件。或者这是一个不同任务的任务? 最佳答案

javascript - grunt Jasmine Node 测试运行两次

我设置了grunt来运行node.jsJasmine测试。出于某种原因,使用此配置,结果总是显示双倍的测试。这是我的配置:我正在使用jasmine-node插入grunt。/spec/some-spec.js:varmyModule=require('../src/myModule.js');describe('test',function(){it('works',function(done){setTimeout(function(){expect(1).toBe(1);done();},100);});});Gruntfile.js:module.exports=function

javascript - 是否可以提示用户在任何 grunt 任务中输入?

我正在尝试使用Grunt在项目中为博客的新帖子创建一个目录。它实际上会在名为YYYYMMDDDD-PostNameInPascalCase的posts目录中创建一个目录。为此,我必须在每次执行任务时提示用户输入帖子名称。我知道grunt-init提示用户从项目模板创建项目,但我很好奇是否有办法在Gruntfile.js文件中为已经建立的项目执行此操作。有什么想法吗? 最佳答案 自上次提出这个问题以来已经有一段时间了,但是Github上有一个项目试图做提问者正在寻找的事情。它叫做grunt-prompt,这是url:https://g

javascript - 直接从 Node 运行 Grunt 任务

如何直接从Node执行Grunt任务,而无需使用CLI?我有以下“POC”代码;但是,永远不会记录“东西”。vargrunt=require('grunt');grunt.registerTask('default','Logsomestuff.',function(){console.log('stuff');});grunt.task.run('default');//Thisisprobablynottherightcommand我是Grunt的新手,所以我可能遗漏了一些明显的东西。我怀疑我用来“运行”任务的命令只是在排队,实际上并没有开始运行。不过,我找不到手动运行的文档。