C# NUnit TestContext.CurrentContext空引用异常

C# NUnit TestContext.CurrentContext空引用异常,c#,nunit,watin,C#,Nunit,Watin,今天早上,我一直在和watiN/Nunit一起玩,捕捉失败UI测试的屏幕截图。然而,我在访问Nunits TestContext.CurrentContext时遇到了NRE 你知道我做错了什么吗 [TestFixture] class SomePageTest { [Test] [STAThread] public void Page_IsAvailable() { var browser = new SomePage(); As

今天早上,我一直在和watiN/Nunit一起玩,捕捉失败UI测试的屏幕截图。然而,我在访问Nunits TestContext.CurrentContext时遇到了NRE

你知道我做错了什么吗

[TestFixture]
class SomePageTest
{
    [Test]
    [STAThread]
    public void Page_IsAvailable()
    {
        var browser = new SomePage();

        Assert.IsTrue(browser.ContainsText("Something"));            

        if (TestContext.CurrentContext.Result.Status == TestStatus.Failed)
        {
            browser.CaptureWebPageToFile(@"X:\location\" + TestContext.CurrentContext.Test.FullName);
        }
    }
}

public class SomePage: IE
{
    public static string SomePageUrl = "http://somepage.com/someurl";
    public SomePage() : base(SomePageUrl)
    {
    }
}

是CurrentContext属性还是Result属性为NULL?可能是因为测试尚未完成,所以尚未设置结果。我正在使用WatiN/NUnit处理project-in-work,并且我能够毫无问题地使用TestContext类,但是我必须说我没有注意到Result属性的状态


如果Result属性为NULL,那么可以尝试将浏览器的初始化移动到TestSetUp方法中,并在处理浏览器实例之前在TestTearDown中执行屏幕捕获。

好吧……在没有成功跳入此异常后,我遇到了以下帖子:


从nunit的test runner运行我的测试是成功的…现在来了解如何使用resharpers test runner实现这一点?

感谢您的回复。结果属性为NULL。将尝试重新安排测试并查看其运行情况:State='NUnit.Framework.TestContext.CurrentContext.Result.State'引发了一个类型为'System.NullReferenceException'R#has(或者had,无论如何它肯定曾经发生过)的异常它自己实现的NUnit测试运行程序——它可能不支持该功能。不确定是否可以将resharper设置为使用2.5.9?不管r#6即将推出,我都可以通过使用它的测试跑步器来获得。