使用Xunit的AutoFixture的AutoData属性会抛出System.InvalidOperationException

dra*_*vic 6 unit-testing xunit autofixture

我正在使用xunit v2.1.0,xunit.extensions v1.8.0.1549,AutoFixture v3.40.0,AutoFixture.Xunit v3.40.0我有这个使用AutoData的简单琐碎测试

using Ploeh.AutoFixture.Xunit;
using Xunit;

namespace Tests
{
    public class ToolTests
    {
        [Theory, AutoData]
        public void Test(int foo)
        {
            Assert.NotEqual(0, foo);
        }
     }
}  
Run Code Online (Sandbox Code Playgroud)

我在Resharper(v9.2)测试运行器中得到的错误是

System.InvalidOperationException未找到Tests.ToolTests.Test的数据异常没有stacktrace

我注意到xunit.extensions不是最后一个版本(目前是v2.0.0),但是当我尝试更新给定的nuget包时,我得到错误:

无法解析依赖项.'xunit.extensions 2.0.0'与'AutoFixture.Xunit 3.40.0约束:xunit.extensions(≥1.8.0.1549&& <2.0.0)'不兼容

任何线索为什么会发生这种情况?

Mar*_*ldi 11

您必须使用该AutoFixture.Xunit2软件包,而不是AutoFixture.Xunit使用xUnit 2.0或更高版本时的软件包.