C# NUnit TestContext.CurrentContext空引用异常
今天早上,我一直在和watiN/Nunit一起玩,捕捉失败UI测试的屏幕截图。然而,我在访问Nunits TestContext.CurrentContext时遇到了NRE 你知道我做错了什么吗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
[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即将推出,我都可以通过使用它的测试跑步器来获得。