【发布时间】:2013-02-18 23:15:45
【问题描述】:
在对 Nancy Web 应用程序进行单元测试时,我收到“无法访问关闭的流”。
我的模块如下:
public class MainModule : NancyModule
{
public MainModule()
{
Get["/{Name}"] = p =>
{
var command = this.Bind<MainCommand>();
return Response.AsJson(command.ExecuteGetMessage());
};
}
}
我的测试是:
[Test]
public void Should_return_welcome_message()
{
// When
var bootstrapper = new DefaultNancyBootstrapper();
var browser = new Browser(bootstrapper);
BrowserResponse browserResponse = browser.Get("/", with =>
{
with.HttpRequest();
});
Console.WriteLine(browserResponse.StatusCode);
Console.WriteLine(browserResponse.Body.ToString());
// Then
Assert.AreEqual(HttpStatusCode.OK,browserResponse.StatusCode);
}
更新:我得到 StatusCode = NotFound 并且尝试访问 browserResponse.Body 时发生异常。
我查看了 Nancy 论坛和 StackOverflow。 我试过这个解决方案:Nancy test doesn't find route in other assembly
但仍然无法正常工作。
当我在调试模式下运行测试时,我看到我的模块已被调用,但我仍然无法检查返回值。
我应该怎么做才能让它工作?
谢谢
阿德马尔
【问题讨论】:
-
你在测试的哪一行得到错误?
-
嗨@Christian Horsdal,感谢您的回复。我更新了问题。谢谢。
标签: c# unit-testing rest nancy