2009-01-25 9 views

回答

2

This由JörgJenni在他的博客中发布。他演示了如何让nBehave输出到显示:

当您可能会注意到 没有写入ReSharper的TestRunner的输出了输出NBehave 0.4最新版本的工作。

以下是我如何解决问题的方法。我从 以下类派生的规格,每一件事情是罚款又:

public class SpecBaseWithConsoleOutput: SpecBase 
{ 
    private EventHandler<EventArgs<MessageEventData>> addedHandler; 
    private EventHandler<EventArgs<Scenario>> scenarioCreatedHandler; 
    private EventHandler<EventArgs<Story>> storyCreatedHandler; 
    public override void MainSetup() 
    { 
    base.MainSetup(); 
    addedHandler = (o, a) => Console.WriteLine(a.EventData.Message); 
    scenarioCreatedHandler = (o, a) => Console.WriteLine(a.EventData.Title); 
    storyCreatedHandler = (o, a) => Console.WriteLine(a.EventData.Title); 
    Story.MessageAdded += addedHandler; 
    Story.ScenarioCreated += scenarioCreatedHandler; 
    Story.StoryCreated += storyCreatedHandler; 
    } 
    public override void MainTeardown() 
    { 
    Story.MessageAdded -= addedHandler; 
    Story.ScenarioCreated -= scenarioCreatedHandler; 
    Story.StoryCreated -= storyCreatedHandler; 
    base.MainTeardown(); 
    } 
} 
+0

非常感谢。这工作出色! – Florian 2009-04-08 13:08:42