Ich verwende laika zum Testen und die meteor-router Paket für das Routing. Ich möchte Tests durchführen, die zu einer Seite navigieren, ein Formular ausfüllen, es absenden und nach einer Erfolgsmeldung suchen, aber ich stecke im Navigationsteil fest. Dies war mein erster Versuch:So testen Meteor Router oder Eisen Router mit laika
var assert = require('assert');
suite('Router', function() {
test('navigate', function(done, server, client) {
client.eval(function() {
Meteor.Router.to('test');
var title = $('h1').text();
emit('title', title);
})
.once('title', function(title) {
assert.equal(title, 'Test');
done();
});
});
});
Das funktioniert nicht, weil Meteor.Router.to
keinen Rückruf hat, und ich weiß nicht, wie die nächste Zeile ausgeführt werden, wenn die neue Seite geladen wird.
Ich habe auch versucht, mit so etwas wie diese
var page = require('webpage').create();
page.open('http://localhost:3000/test', function() {
...
}
aber ich habe den Fehler Error: Cannot find module 'webpage'
bearbeiten
Ich bin zu iron router bewegen, so dass jede Antwort mit, dass auch sein hilfreich.
FYI: Wenn Sie gerade erst anfangen, möchten Sie möglicherweise zu https://github.com/EventedMind/meteoron-router wechseln, die von den Autoren der letzten beiden weit verbreiteten Meteor-Router gemacht wurde. –