NUnit TestContext.CurrentContext исключение нулевой ссылки - PullRequest
4 голосов
/ 19 марта 2011

Этим утром я играл с watiN / Nunit, чтобы сделать скриншот неудачных тестов пользовательского интерфейса.Тем не менее, я сталкиваюсь с NRE при доступе к Nunits TestContext.CurrentContext ...

Есть идеи, что я делаю неправильно?

[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)
    {
    }
}

Ответы [ 2 ]

5 голосов
/ 19 марта 2011

Ну ... после безуспешного погружения в это исключение я наткнулся на этот пост: http://www.barebonescoder.com/2010/10/nunit-and-the-new-testcontext-class/

Выполнение моего теста в тестовой программе nunit прошло успешно ... теперь, чтобы выяснить, как сделать эту работус бегунком-испытателем?

1 голос
/ 19 марта 2011

Это свойство CurrentContext или свойство Result, которое имеет значение NULL? Возможно, результат не был установлен, потому что тест еще не завершен. Я работаю над проектом в работе, используя WatiN / NUnit, и я смог без проблем использовать класс TestContext, но должен сказать, что не заметил состояния свойства Result.

Если свойство Result имеет значение NULL, то, возможно, попробуйте переместить инициализацию браузера в метод TestSetUp и выполнить захват экрана в TestTearDown перед удалением экземпляра браузера.

...