Używam Yeoman do rusztowania mojego projektu. Jest wyposażony w kilka poręcznych rzeczy, w tym biegacz testowy z serii PhantomJS.Testy Mokki z Yeomanem i PhantomJS
Mój problem polega na tym, że chociaż moje testy działają poprawnie w przeglądarce, przestają działać, próbując uruchomić je za pomocą PhantomJS w CLI.
Oto jak moja próba index.html
wygląda następująco:
<!doctype html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Mocha Spec Runner</title>
<link rel="stylesheet" href="lib/mocha/mocha.css">
</head>
<body>
<div id="mocha"></div>
<script src="lib/mocha/mocha.js"></script>
<!-- assertion framework -->
<script src="lib/chai.js"></script>
<!-- include source files here... -->
<script data-main="scripts/main" src="scripts/vendor/require.js"></script>
<script>
mocha.setup({ui: 'bdd', ignoreLeaks: true});
expect = chai.expect;
should = chai.should();
require(['../spec/map.spec'], function() {
setTimeout(function() {
require(['../runner/mocha']);
}, 100);
});
</script>
</body>
</html>
Oto map.spec.js
:
require(['map'], function (Map) {
describe('Choropleth Map Generator', function() {
describe('Configure the map', function() {
it("should enforce mandatory parameters in the configuration", function() {
var config = {title: 'test configuration'};
var map = new Map(config);
(function() {
map.getConfig();
}).should.throw(Error);
});
});
});
});
Teraz, kiedy robię yeoman test
, otrzymuję to:
Running "server:phantom" (server) task
Starting static web server on port 3501
[...]
Running "mocha:all" (mocha) task
Testing index.html
<WARN> PhantomJS timed out, possibly due to a missing Mocha run() call. Use --force to continue. </WARN>
Aborted due to warnings.
Jak powiedziałem , yeoman server:test
pokazuje moje twierdzenia poprawnie w br Owser.
Używam Yeoman 0.9.6 i PhantomJS 1.7.0. Każda pomoc jest doceniana.
Jest to domyślne, generowane przez 'Yeoman init'. To znaczy - 'mocha: { wszystkie: ['test/**/*. Html'] },' –
To sprawiło, że zadziałało to dla mnie, ale od pierwszej próby. Więcej szczegółów tutaj - https://github.com/yeoman/yeoman/issues/719 –
Oto działa szablon: https://github.com/roblevintennis/yeoman_requirejs_template – Rob