使用Travis-CI客户端JavaScript库?
我不确定是否将Travis-CI用于我的客户端JavaScript库,因为它使用Travis-CI服务器上的NodeJ进行编译。
我想知道这是一个很好的方法来使用某种持续集成,如客户端库的Travis-CI或不是?
当然,你应该使用客户端库的持续集成。
我个人使用已经安装在Travis-CI中的 PhantomJS(无头webkit浏览器) 。 我认为这是比NodeJs更好的客户端选项。
如果你使用Grunt ,它会变得更容易使用,你只需要一个简单的Gruntfile.js文件,在浏览器中运行的testing(我使用QUnit )和一个简单的.travis.yml
Gruntfile.js
:
module.exports = function(grunt) { // Project configuration. grunt.initConfig({ qunit: { files: ['test/index.html'] } }); // Load plugin grunt.loadNpmTasks('grunt-contrib-qunit'); // Task to run tests grunt.registerTask('test', 'qunit'); };
.travis.yml
:
before_script: - sudo npm install -g grunt script: grunt test --verbose --force
你可以在我的一个项目中看到它 ( 在GitHub上的源代码 )。
我开始从奥迪的答复,并转移到吞噬得到它的工作。 如果您在travis文件中指定了node_js作为您的语言,travis将自动运行
npm install
其次是
npm test
第一个将安装在package.json文件中指定的任何devDependencies,第二个将从package.json运行名为“test”的脚本。 下面你会发现我需要在travis的顶层有三个文件来运行一个qunit套件。
.travis.yml
language: node_js node_js: - "0.10"
gulpfile.js
var gulp = require('gulp'), qunit = require('gulp-qunit'); gulp.task('default', function() { return gulp.src('./tests/unit/unittests_nupic-js.html') .pipe(qunit()); });
的package.json
{ "name": "nupic-js", "version": "0.0.1", "description": "JavaScript port of NuPIC", "license": "GPL-3.0", "repository": "iandanforth/nupic-js", "bugs": { "url" : "http://github.com/iandanforth/nupic-js/issues" }, "author": { "name": "Ian Danforth", "email": "iandanforth@gmail.com" }, "engines": { "node": ">=0.10.0" }, "scripts": { "test": "gulp" }, "keywords": [ "numenta", "nupic", "machine learning" ], "devDependencies": { "gulp-qunit": "~0.2.1", "gulp-util": "~2.2.14", "gulp": "~3.5.1" } }
Odi的答案更新并使用npm来解决依赖关系:
.travis.yml
language: node_js node_js: - "6"
.Gruntfile.js
module.exports = function(grunt) { // Project configuration. grunt.initConfig({ qunit: { files: ['./test/qunit.html'] } }); // Load plugin grunt.loadNpmTasks('grunt-contrib-qunit'); // Task to run tests grunt.registerTask('test', 'qunit'); };
Package.json (相关部分)
"devDependencies": { "grunt": "^1.0.1", "grunt-contrib-qunit": "^1.3.0" }, "scripts": { "test": "grunt test" }
您可以通过运行npm install
然后npm test
在本地尝试configuration。
我发现这个例子。 相当全面!
https://github.com/jonkemp/gulp-qunit
跑:
npm install gulp test
它也有lint
观看文件,报道报告等等的任务。