NUnit игнорирует тест при запросе макета из AutoFixture/AutoMaq
Я использую 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()))
{ }
}
Когда я строю свое решение, тест обнаруживается. Когда я запускаю тест, в окно вывода записывается следующее:
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:
- Автокрепление 3.18.1
- AutoFixture.AutoMoq 3.18.1
- Мок 4.2.1402.2112
- NUnit 2.6.3
- NUnitTestAdapter 1.0
Я запускаю тест из Visual Studio 2013 Professional. Я также попытался запустить тест в отдельном GUI Runner, с тем же результатом.
1 ответ
Следующий тест 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);
}
}
Встроенный тестовый бегун не обнаруживает вышеуказанный тест. Это похоже на ошибку в тестовом раннере.