我正在尝试创建一个在 .net core 中运行的 F# 单元测试项目。
dotnet new -t xunittest
创建 C# 的 xunit 测试项目,但没有 F# 等效的。
我试图修改从上面展示的 C# 的 "dotnet new" 输出的 project.json 和测试文件,并添加我认为需要使其在 F# 下运行的部分。但它没有起作用。它构建并且甚至在键入 "dotnet test" 后运行了一个测试,但是测试始终通过,即使它不应该通过。
我是否在设置方面遗漏了什么,或者是否有另一个(也许完全不同的)选项可以追求,以创建 F# 测试项目?再次强调,我特别关注让它在 .NET Core 中工作。
project.json
{
"version": "1.0.0-*",
"buildOptions": {
"debugType": "portable",
"emitEntryPoint": true,
"compilerName": "fsc",
"compile": {
"includeFiles": [
"Tests.fs"
]
}
},
"dependencies": {
"System.Runtime.Serialization.Primitives": "4.3.0",
"xunit": "2.1.0",
"dotnet-test-xunit": "1.0.0-*"
},
"tools": {
"dotnet-compile-fsc": "1.0.0-preview2.1-*"
},
"testRunner": "xunit",
"frameworks": {
"netcoreapp1.1": {
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.1.0"
},
"Microsoft.FSharp.Core.netcore": "1.0.0-alpha-160629"
},
"imports": [
"dotnet5.4",
"portable-net451+win8"
]
}
}
}
Tests.fs
module Tests
open Xunit
[<Fact>]
let ``Should Fail`` =
Assert.False true
从 dotnet test 输出的结果
xUnit.net .NET CLI test runner (64-bit .NET Core win10-x64)
Discovering: FSTests
Discovered: FSTests
=== TEST EXECUTION SUMMARY ===
FSTests.dll Total: 0
SUMMARY: Total: 1 targets, Passed: 1, Failed: 0.