我希望能够模拟Signalr Hub进行服务测试。这个想法是能够以以下方式创建测试:启动SignalR服务器(应在运行时配置URL,端口和集线器类) - 为此目的,将在测试模块中创建集线器。因此,第一部分 - 启动运行时可配置的SignalR服务器是可能的:
StartOptions so = new StartOptions("http://127.0.0.1:8080");
so.AppStartup = "SrServer.Startup1"; // set the startup class (will be defined in the test module)
以下是启动1:
的示例class Startup1
{
public void Configuration(IAppBuilder app)
{
app.UseCors(CorsOptions.AllowAll);
app.MapSignalR();
}
}
我缺少的唯一问题是能够设置要从我的测试模块中使用的集线器 - 这是否可能?
只需在调用'app.mapsignalr();'
之前加载包含集线器的程序集AppDomain.CurrentDomain.Load(typeof(MyHub).Assembly.FullName);
来源:https://stackoverflow.com/a/21597197/10720979