我正在尝试使用NUnit框架编写一些测试。测试源是:
namespace UnitTests
{
// obsolete: [NUnit.Framework.TestFixture]
public class NameSorterTests
{
public NameSorterTests () {
System.Console.WriteLine("Creating test object");
}
[NUnit.Framework.SetUp]
public void GetReady()
{
System.Console.WriteLine("starting test");
}
[NUnit.Framework.TearDown]
public void Clean()
{
System.Console.WriteLine("closing test");
}
[NUnit.Framework.Test]
public void monotonicSequence ()
{
System.Console.WriteLine("running test");
NUnit.Framework.Assert.IsTrue (true);
}
}
}
当我尝试运行测试时,请从命令行进行:
$ mcs -r:nunit.framework -target:library UnitTests.cs && nunit-console UnitTests.dll -run:blobby
Note: nunit-console shipped with Mono is deprecated, please use the NUnit
NuGet package or some other form of acquiring NUnit.
NUnit version 2.4.8
Copyright (C) 2002-2007 Charlie Poole.
Copyright (C) 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov.
Copyright (C) 2000-2002 Philip Craig.
All Rights Reserved.
Runtime Environment -
OS Version: Unix 4.14.12.6
CLR Version: 4.0.30319.42000 ( 5.16.0.179 (tarball Fri Nov 30 09:54:19 AEST 2018) )
Selected test: blobby
Tests run: 0, Failures: 0, Not run: 0, Time: 0.032 seconds
注意看似虚假的 -run:blobby 参数;如果我忽略了这一点,那么将省略 Selected test:blobby 行,但其余输出相同。我指定不存在的测试似乎并不在乎。它在做什么 ,如何使它运行测试?
顺便说一句,我不关心弃用警告,只要它现在就可以使用;该练习仅适用于工作申请。
答案 0 :(得分:0)
对于NUnit 2.4,需要测试类上的[TestFixture]
属性。
答案 1 :(得分:0)
您确定[TestFixture]在使用的NUnit中已过时吗?取消注释NameSorterTests上的[TestFixture]属性会发生什么?
答案 2 :(得分:0)
我相信您需要在类上使用TestFixture数据属性。