作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试创建一个在 .net core 中运行的 F# 单元测试项目。
dotnet new -t xunittest
{
"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"
]
}
}
}
module Tests
open Xunit
[<Fact>]
let ``Should Fail`` =
Assert.False true
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.
最佳答案
您的测试不是一个函数,而是一个值。编译为 IL 作为属性或字段(取决于原因)。 xUnit 寻找要执行的方法,它会跳过属性和字段(这是正确的:它将如何执行它们?)
为什么不是函数?因为它没有参数。这是 F# 的事情:如果你有参数,你就是一个函数。否则 - 值。
只要给它一个参数,它就会变成一个函数。没有任何有意义的参数要添加?添加 unit
一个 - 然后它将作为无参数静态方法编译为 IL。
[<Fact>]
let ``Should Fail`` () =
Assert.False true
关于unit-testing - 有没有办法在 .net core 中对 F# 项目进行单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41968229/
我是一名优秀的程序员,十分优秀!