gulp-mocha-phantomjs ![Build Status](https://camo.githubusercontent.com/7cb100ae026678e2f56282323a92b0642682883b451dcd66bc7cb08ab88b7f6d/68747470733a2f2f7472617669732d63692e6f72672f6d72686f6f7261792f67756c702d6d6f6368612d7068616e746f6d6a732e7376673f6272616e63683d6d6173746572)
$ npm install gulp-mocha-phantomjs --save-dev
<!DOCTYPE html>
<html>
<head>
<title>Mocha</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="./node_modules/mocha/mocha.css" />
</head>
<body>
<div id="mocha"></div>
<script src="./node_modules/should/should.js"></script>
<script src="./node_modules/mocha/mocha.js"></script>
<script>mocha.setup('bdd')</script>
<script>
describe('true', function () {
it('should be true', function () {
true.should.equal(true);
});
});
</script>
<script>
if (window.mochaPhantomJS) {
mochaPhantomJS.run();
} else {
mocha.run();
}
</script>
</body>
</html>
var gulp = require('gulp');
var mochaPhantomJS = require('gulp-mocha-phantomjs');
gulp.task('test', function () {
return gulp
.src('test/runner.html')
.pipe(mochaPhantomJS());
});
Reporter can be chosen via reporter
option:
gulp.task('test', function () {
return gulp
.src('test/runner.html')
.pipe(mochaPhantomJS({reporter: 'spec'}));
});
Output of mocha tests can be piped into a file via dump
option:
gulp.task('test', function () {
return gulp
.src('test/runner.html')
.pipe(mochaPhantomJS({reporter: 'xunit', dump:'test.xml'}));
});
Test against remote by url:
gulp.task('test', function () {
var stream = mochaPhantomJS();
stream.write({path: 'http://localhost:8000/index.html'});
stream.end();
return stream;
});
Pass options to mocha and/or PhantomJS:
gulp.task('test', function () {
return gulp
.src('test/runner.html')
.pipe(mochaPhantomJS({
reporter: 'tap',
mocha: {
grep: 'pattern'
},
phantomjs: {
viewportSize: {
width: 1024,
height: 768
}
}
}));
});
MIT