AutoFixture的AutoData属性与Xunit一起使用会引发System.InvalidOperationException异常。

7
我正在使用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);
        }
     }
}  

在Resharper(v9.2)测试运行器中出现的错误是:
System.InvalidOperationException 未找到Tests.ToolTests.Test的数据 异常没有堆栈跟踪
我注意到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)'不兼容。
这是为什么呢?有什么线索吗?
1个回答

12
您在使用xUnit 2.0或更高版本时,必须使用AutoFixture.Xunit2包,而不是AutoFixture.Xunit包。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接