namespace Obc.Sh
{
/// <summary>
/// クライアントバージョン
/// </summary>
public class MAProgramVersion
{
/// <summary>
/// バージョン文字列(長形式)
/// </summary>
public static readonly string ProgramVersion = "1.02.0000.00000";
public static void Main() { }
}
}
namespace MAProgramVersionTestCase
{
[TestFixture]
public class MAProgramVersionTestCase
{
public MAProgramVersion terget; [SetUp]
public void SetUp()
{
terget = new MAProgramVersion();
} [TearDown]
public void TearDown()
{
terget = null;
} [Test]
public void TestProgramVersion()
{
Console.WriteLine("TestMAProgramVersion TestProgramVersion");
Assert.AreEqual("1.02.0000.00000", terget); }
}
}用nunit执行后说红色部分出错,是不是因为terget没有取到主类的变量?
{
/// <summary>
/// クライアントバージョン
/// </summary>
public class MAProgramVersion
{
/// <summary>
/// バージョン文字列(長形式)
/// </summary>
public static readonly string ProgramVersion = "1.02.0000.00000";
public static void Main() { }
}
}
namespace MAProgramVersionTestCase
{
[TestFixture]
public class MAProgramVersionTestCase
{
public MAProgramVersion terget; [SetUp]
public void SetUp()
{
terget = new MAProgramVersion();
} [TearDown]
public void TearDown()
{
terget = null;
} [Test]
public void TestProgramVersion()
{
Console.WriteLine("TestMAProgramVersion TestProgramVersion");
Assert.AreEqual("1.02.0000.00000", terget); }
}
}用nunit执行后说红色部分出错,是不是因为terget没有取到主类的变量?
肯定不相等的
Assert.AreEqual("1.02.0000.00000", terget.ProgramVersion);
用这个就行了;用terget.ProgramVersion时可能会提示空引用。这点我不确定。如果是按执行的顺序来看,是没问题的:
1 public MAProgramVersion terget;
2 terget = new MAProgramVersion();
3 terget.ProgramVersion;
但是在编译的时候,可能会有问题;