上下文:我想编写一个使用 WAMP(Web 应用程序消息传递协议,而不是 Windows 的服务集合)的 Web 服务。应该使用 WAMP,因为它以非常简单的方式支持事件和 RPC。并且开销更低。
现在如何在不手动编写所有内容的情况下对我的服务的 RPC 方法进行单元测试?
我的第一个方法是将 Autobahn-JS 和 QUnit 结合在一起。这里的问题是 AutobahnJS 不支持阻塞的“open()”方法。所以我不能确定 QUnits beforeEach-hook 打开的连接。看这个例子:
var connection;
QUnit.module("Module 1", function(hooks) {
hooks.beforeEach(function(assert) {
// insert something executed before each test
connection = new autobahn.Connection({
url: wstarget,
realm: wsrealm
});
connection.open();
});
QUnit.test( "check something", function( assert ) {
assert.ok(connection.isConnected == true);
// do something here that requires open connection...
});
});
还有其他/更好的选择吗?