MStest中的Textcontext属性,给出空引用exeption

时间:2018-04-25 06:26:50

标签: mstest testcontext

我正在尝试在Visual Studio 2017中创建一个单元测试项目。我想在我的测试类和Test方法中使用Testcontext类prorperties,如TestName等。但是当我在调试模式下运行项目时,我得到Testcontext对象的空对象引用。

以下是代码:

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace UnitTestProject2
{

    [TestClass]
    public class UnitTest1
    {
        private TestContext _testcontext;
        public  TestContext Testcontext
        {
            get { return _testcontext; }
            set { _testcontext = value; }
        }

        [TestMethod]
        public void TestMethod2()
        {
            Console.WriteLine(Testcontext.TestName);
        }
    }    
}

我无法找到如何使用Coded UI项目解决此问题,它可以正常工作。

例外

enter image description here

2 个答案:

答案 0 :(得分:0)

您尚未为自己提供的代码示例中的_testcontext设置值,因此您将获得NullReferenceException

答案 1 :(得分:0)

您需要更改TestContext属性的定义。

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace UnitTestProject2 
{
    [TestClass]
    public class UnitTest1
    {
        public TestContext TestContext { get; set; }

        [TestMethod]
        public void TestMethod2()
        {
            Console.WriteLine(Testcontext.TestName);
        }
    }
}