我正在使用NUnit
AutoFixture
,AutoMoq
和Theory
属性。
这是我的测试方法,
[TestFixture]
public class TestClass
{
[Theory, AutoMoqData]
public void TestI(I i)
{ }
}
界面
public interface I
{ }
和属性
public class AutoMoqDataAttribute : AutoDataAttribute
{
public AutoMoqDataAttribute()
: base(new Fixture().Customize(new AutoMoqCustomization()))
{ }
}
当我构建我的解决方案时,会发现测试。当我运行测试时,以下内容被写入Output窗口:
NUnit 1.0.0.0 executing tests is started
Run started: [...].Test.dll
NUnit 1.0.0.0 executing tests is finished
Test adapter sent back a result for an unknown test case. Ignoring result for 'TestI(Mock<TestClass+I:1393>.Object)'.
使用xUnit.net
时,上述测试运行正常。为什么不使用NUnit
?
我在测试项目中安装了以下Nuget包:
我正在Visual Studio 2013 Professional中运行测试。我也尝试在单独的GUI运行器中运行测试,结果相同。
答案 0 :(得分:3)
以下NUnit测试在Visual Studio 2013中使用TestDriven.Net加载项传递:
internal class AutoMoqDataAttribute : AutoDataAttribute
{
internal AutoMoqDataAttribute()
: base(
new Fixture().Customize(
new AutoMoqCustomization()))
{
}
}
public interface IInterface
{
}
public class Tests
{
[Test, AutoMoqData]
public void IntroductoryTest(IInterface i)
{
Assert.NotNull(i);
}
}
内置测试运行器没有发现上述测试。这看起来像测试运行器中的一个错误。