首页 文章

xunit 不能用 ASP.NET Core RC2 编译

提问于
浏览
4

我创建了一个名为 MyHelpers 的 ASP.NET Core RC2 类库,并在 project.json 上获得了以下内容:

"dependencies": {
  "NETStandard.Library": "1.5.0-rc2-24027",
},

"frameworks": {
  "netstandard1.5": {
    "imports": [
      "dnxcore50",
      "portable-net452+win81"
    ]
  }
}

然后我创建了一个用于测试的 ASP.NET Core RC2 类库,命名为 MyHelpersTests,并在 project.json 中获得以下内容:

"testRunner": "xunit",

"dependencies": {
  "NETStandard.Library": "1.5.0-rc2-24027",
  "xunit": "2.2.0-beta1-build3239",
  "dotnet-test-xunit": "1.0.0-rc2-build10015",
  "MyHelpers": "1.0.0"
},

"frameworks": {
  "netstandard1.5": {
    "imports": [
      "dnxcore50",
      "portable-net452+win81"
    ]
  }
}

当我编译它时,我得到错误:

Package dotnet-test-xunit 1.0.0-rc2-build10015 is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package dotnet-test-xunit 1.0.0-rc2-build10015 supports:
  • net451(.NETFramework,Version=v4.5.1) - netcoreapp1.0(.NETCoreApp,Version=v1.0)一个或多个包与.NETStandard,Version=v1.5 不兼容。

我错过了什么?

3 回答

  • 5

    实际上你的测试项目不能是netstandard1.5库而是netcoreapp1.0应用程序(如错误消息和 xunit 介绍页面中所述)。测试程序集需要可执行并需要 Main()(由 xunit 提供)。 netstandard1.5netcoreapp1.0的子集。

    我认为你还必须将你的依赖关系改为"Microsoft.NETCore.App":"1.0.0-rc2-3002702"

  • 3

    今天这对我有用,整个配置看起来像这样......

    {
        "version": "1.0.0-*",
    
        "testRunner": "xunit",
    
        "dependencies": {
            "Microsoft.NETCore.App": {
                "version": "1.0.0-rc2-3002702",
                "type": "platform"
            },
            "xunit": "2.1.0",
            "dotnet-test-xunit": "1.0.0-rc2-build10025"
        },
    
        "frameworks": {
            "netcoreapp1.0": {
                "imports": [
                    "dnxcore50",
                    "portable-net45+win8"
                ]
            }
        }
    }
    
  • 2

    我认为问题是你缺少便携式 net45 导入。

    这是我的 project.json:

    "frameworks": {
         "netcoreapp1.0": {
           "dependencies": {
            "Microsoft.NETCore.App": {
               "type": "platform",
               "version": "1.0.0-rc2-3002702"
            }
           },
           "imports": [
             "dnxcore50",
             "portable-net45+win8"
          ]
        }
    

相关问题