F# UnitTest 项目中的 AutoFixture 未在测试资源管理器中显示单元测试

2023-12-03

我有一个 Visual Studio 2012 项目并安装了以下 NuGet 包:

  • 使用最小起订量进行自动模拟的 AutoFixture
  • Autofixture 与 xUnit.net 数据理论
  • 汽车夹具
  • Moq
  • xUnit.net:扩展
  • xUnit.net:跑步者
  • xUnit.net

给出以下设计的 Logger 类 (Logger.fs):

namespace FUnit

type public ILoggerContext =
    abstract member LogPath :string

type public LoggerContext (logPath :string) =
    member val LogPath = logPath with get, set

    interface ILoggerContext with
        member this.LogPath = this.LogPath

type public Logger () =
    member this.Log (context: ILoggerContext) value =
        System.String.Format("Logged {0} to {1}.", value, context.LogPath)

以及以下单元测试:

namespace FUnit.Test

open FUnit

type public Math_Add() = 

    [<Xunit.Extensions.Theory>]
    [<Ploeh.AutoFixture.Xunit.AutoData>]
    member this.``Should Output Value And Path`` (path :string) =
        let context = new LoggerContext(path)
        let logger = new Logger()

        let expected = System.String.Format("Logged value to {0}.", path)
        let actual = logger.Log context "value"

        Xunit.Assert.Equal<string>(expected, actual)

确保我显示所有测试并构建项目后,测试资源管理器无法识别单元测试。项目正确构建,构建、常规或测试输出日志中没有错误或警告。

如果我用 Fact 属性替换当前的 Theory 和 AutoData 属性,则会显示测试。

F# 测试项目是否支持 AutoFixture? 其他人可以复制这个并知道我做错了什么吗?


我认为这是版本冲突的问题Xunit.Extensions被使用过Ploeh.Autofixture.Xunit和测试运行者。

如果您使用 Xunit 的运行程序运行测试,那么您应该会看到一个异常,抱怨无法找到特定版本的Xunit.Extensions.

您可以通过向测试项目添加绑定重定向来解决此问题app.config。由于您使用的是 NuGet,因此您可以通过在测试项目的包管理器控制台中运行它来生成绑定重定向。

Add-BindingRedirect

然后您可以调整生成的绑定重定向app.config如果您愿意的话可以更具体。

重建项目后,您应该会看到测试出现在 VS 测试资源管理器中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

F# UnitTest 项目中的 AutoFixture 未在测试资源管理器中显示单元测试 的相关文章

  • 一旦相关命令更改,如何自动运行 py.test?

    通过autonose或nosy 一旦某些测试文件或相关文件发生更改 它将自动运行nosetests 请问py test是否提供了类似的功能 有没有其他工具可以自动激发py test 您可以安装pytest xdist 插件 http pyp
  • Grails 控制器单元测试不会将页面渲染到response.text

    我的环境配置 Java 1 7u51 Grails 2 3 7 我试图断言response text在控制器测试中但它总是带 发生了什么 这是我的用户控制器 class UserController def index flash erro
  • 在 PyCharm 中禁用 Pytest

    如果我有一个以 test 开头的文件 PyCharm 会尝试使用 PyTest 运行该文件 我想正常运行它 作为常规 Python 脚本 我怎样才能做到这一点 Edit请参阅下面 Milo 的回答 如果由于某种原因这对您不起作用 正如 A
  • 我可以提供类型作为 F# 中类型提供程序的输入吗?

    这样做有什么我应该注意的陷阱吗 您知道处理我可能遇到的相同 pb 的现有代码吗 Thks 不幸的是 您无法将类型作为静态参数传递给类型提供程序 使用传递的静态参数MyProvider lt first argument 42 gt 必须是原
  • Seam 和 Mock 有什么区别?

    自从我使用 java 遗留代码以来已经有几个月了 这是我正在处理的一些事情 0 测试覆盖率 巨大的函数有时我什至看到有的代码超过300行 许多私有方法 有时还有静态方法 高度紧密耦合的代码 一开始我很困惑 我发现在遗留系统中使用TDD很难
  • 使用 testify 模拟接口方法两次,输入和输出不同

    如何在 golang 测试中模拟接口方法两次 例如 type myCache interface Get key string data interface error type service struct cache myCache f
  • .Net 中可用的并行技术

    我是 Net 平台的新手 我查了一下 发现 Net中有几种做并行计算的方法 任务并行库中的并行任务 即 Net 3 5 PLINQ Net 4 0 异步编程 Net 2 0 异步主要用于执行 I O 繁重的任务 F 有简洁的语法支持这一点
  • 如何将 OpenCV 的测试框架与 CMake 结合使用?

    好像 OpenCV 有一个测试框架 https github com Itseez opencv tree ef91d7e8830c36785f0b6fdbf2045da48413dd76 modules ts include opencv
  • 如何在 F# 中执行 Seq.takeWhile + 一项

    我想编写一个使用谓词过滤序列的函数 但结果还应该包括谓词返回 false 的第一个项目 如果 F 中有一个break关键字 逻辑将是这样的 let myFilter predicate s seq for item in s do yiel
  • 一个单元在哪一级测试无锁代码?

    Can LLVM https packages debian org stretch llvm QEMU https packages debian org stretch qemu kvm GDB https packages debia
  • 从文件夹中删除文件的单元测试方法

    我们有一个方法 它将文件夹名称和天数作为参数 public void Delete string folder int days var files Directory GetFiles folder foreach var file in
  • Xcode 异步单元测试在主线程上等待

    我正在尝试使用 Xcode 中的单元测试来测试一些异步代码 但主线程被阻塞 问题在于 某些正在测试的代码期望从 iOS 类 AVFoundation 接收回调 但是 AVFoundation 类似乎只会在主线程上回调 问题是 如果我正在进行
  • scala play框架如何对异步控制器进行单元测试

    使用 Scala play 2 5 版并尝试遵循以下文档中的单元测试控制器指南 https www playframework com documentation 2 5 x ScalaTestingWithScalaTest https
  • F# 之于 IronPython/IronRuby 就像 C# 之于 VB.NET 一样?

    我刚刚听了Chris Smith 谈论 F 的播客 http www code magazine com codecast index aspx messageid 7feb501f 25c8 432a 9624 97082f1e75e8他
  • xUnit.net 不捕获控制台输出

    我刚刚开始测试 xUnit net 但它似乎没有捕获任何输出 控制台 调试 跟踪 正如我所期望的那样 那可能吗 我正在使用 xUnit net 1 8 的示例 NET 4 0 类库 xUnit net 2 的情况发生了一些变化 我知道问题是
  • 如何根据特定条件触发电子邮件以在 Jenkins 中成功构建

    每当某个条件在构建后步骤的执行 shell 中成立时成功的构建 我想触发电子邮件发送 问题是 即使条件不成立 构建也会被视为success 我正在尝试实现的内容 if condition true then
  • 如何确定我们是否正在 Dart (Flutter) 中运行单元测试

    在 Flutter Dart 中从单元测试调用函数时 如何确定我正在运行单元测试还是实际应用程序 如果在单元测试中 我想传递不同的数据 您可以使用以下内容来检查您是否正在运行测试 Platform environment containsK
  • 单元测试:创建“模拟”请求来模拟 MVC 页面请求

    如何为我的 asp net mvc 应用程序创建模拟请求以进行单元测试 我有什么选择 我在我的操作中使用 FormsCollection 因此我也可以模拟表单输入数据 您只需创建 FormCollection 的新实例并在其中添加数据即可
  • 如何使用 jUnit 将测试用例添加到套件中?

    我有 2 个测试类 都扩展了TestCase 每个类都包含一堆针对我的程序运行的单独测试 如何将这两个类 以及它们拥有的所有测试 作为同一套件的一部分执行 我正在使用 jUnit 4 8 在 jUnit4 中你有这样的东西 RunWith
  • 如何使用mockito模拟构建器

    我有一个建造者 class Builder private String name private String address public Builder setName String name this name name retur

随机推荐

  • 将 swifty json 数组保存到用户默认值

    我有一个 jsondata它提供以下信息 let data QuestionTitle Entomology is the science that studies Id 205 Options Option Insects Id 810
  • 从 PySpark 中的列加载 XML 字符串

    我有一个 JSON 文件 其中一列是 XML 字符串 我尝试在第一步中提取该字段并写入文件 并在下一步中读取该文件 但每一行都有一个 XML 标头标记 因此生成的文件不是有效的 XML 文件 如何使用 PySpark XML 解析器 com
  • 使用 jQuery 获取每个
  • 索引号
  • 我正在尝试获取少数的索引号 li 的 li 是 8 我正在尝试获取每个 li 的编号 在每个 li 上单击我都会执行此功能 var str amastorage li index alert str 这总是给我8 EDIT 这就是我得到它的
  • onResume 在视图模型中不起作用

    我的数据仅在创建时才获取 我使用视图模型 当按后退按钮时 它不会更新以前的数据 onresume 在此不起作用 我提到了这个 但没有一个有帮助 gt 对 ViewModel 中的活动生命周期做出反应 我需要帮助 提前致谢 活动 class
  • DataGrid 获取选定行的列值

    我正在尝试获取 DataGrid 中选定行的每一列的值 这就是我所拥有的 private void dataGrid1 CellEditEnding object sender DataGridCellEditEndingEventArgs
  • $("html").animate({scrollTop: $(document).height() }, "慢");如果它在底部,请不要滚动它

    我有三个隐藏 div 的按钮 当我单击一个按钮时 我希望内容滚动到底部 然后当我单击另一个按钮时 我希望页面保持在原来的位置 但加载新内容 我尝试过变量和 if 语句 var i 0 link slide13 click function
  • 创建一个核心日期实体实例但不希望它被存储(非持久)

    有时我需要实例化核心数据实体来存储一些信息以供临时使用 但我不需要将它存储到数据库中 目前我创建了一个类似的类 其结构与 CoreDateEntity 相同 它运行良好 但我必须在两个模型之间进行许多数据传输 有没有更好的方法来处理这个问题
  • C# - 将 JSON 反序列化为 ValueTuple

    我正在尝试反序列化 foo 1 bar false foo 2 bar false into List lt string bool gt 类型 JsonConvert DeserializeObject
  • 修改Android选中下拉项的颜色

    如何修改 Android Honeycomb 应用程序中 Spinner 上所选项目的文本颜色 编辑 我有一个正在膨胀的旋转布局 是否可以在此微调器中添加属性来更改文本颜色 我能够更改背景 例如使用微调器上的 android backgro
  • 设计可插入积分和徽章系统[关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 如何设计一个可插拔积分和徽章系统 既易于打开和关闭 又易于变成自己的模块 经过多次试验和错误 我得出的结论是 积分和徽章与应用程序的唯一业务逻辑过于交织在一起 无法以简单的方式将它们具
  • 获取长列表并将其重新整形为数据框“行” - pandas python 3

    我有一长串项目 我想按照设定的时间间隔将其放入数据框中 我有另一个带有 列名称 的列表 E g colnames Title Date Abstract ID Volume data a b c d e f g h i j k l m n
  • Python pandas 计算字符串中正则表达式匹配的数量

    我有一个包含句子的数据框和按主题分组的术语词典 我想在其中计算每个主题的术语匹配数 import pandas as pd terms animals fox deer eagle people John Rob Steve games b
  • 在插入时插入当前日期

    我有一个具有以下结构的表 id some column another column inserted edited 1 2014 08 15 2016 03 04 2 2015 09 16 2016 10 07 3
  • 用于向数组添加元素的 PowerShell 函数

    我对 PowerShell 还很陌生 并且正在尝试创建一些组合在一起的函数来创建和管理数组 我在使这些功能之一按预期工作时遇到一些问题 我需要第二个函数 AddToArray 将元素添加到指定索引 任何现有元素都不能被覆盖或删除 例如 如果
  • 如何在 powershell 中创建包含普通数组的非托管结构?

    我需要在 Powershell 脚本中组装一个 Blob 显示以下布局 Pragma pack 1 struct MyConfig uint16 t level uint16 t thresholds 16 the struct conta
  • [数组/对象]中的[文字]是什么意思?

    以下语法的含义是什么 1 in 1 2 3 5 我知道它不会在数组中搜索 1 但它有什么作用呢 我见过它在循环中使用 for var i in testArray 但也看到过它本身被使用 这是否意味着检查文字是否是另一个操作数的数组或对象中
  • 静态数据成员未通过套接字在对象发送中发送

    我想为两个客户端发送相同的对象 我使用对象写入非共享方法并读取非共享方法 我的对象的类是 package servidor import java io Serializable public class Token implements
  • 从不同数据库导入的语法 - MS Access

    我正在尝试 基本上 从一个后端到另一个后端进行自动行复制 因为后端正在使用但尚未完全开发 一些表已完成 其他表未完成 最后将完整的数据添加到更高级的数据库中 当日 我想知道 SQL 语句的语法是什么 INSERT INTO tblMyBet
  • 为什么编程中需要指针? [关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 使用任何语言 例如 C 语言 编写代码时使用指针是否重要 它会占用更多内存吗 Thank
  • F# UnitTest 项目中的 AutoFixture 未在测试资源管理器中显示单元测试

    我有一个 Visual Studio 2012 项目并安装了以下 NuGet 包 使用最小起订量进行自动模拟的 AutoFixture Autofixture 与 xUnit net 数据理论 汽车夹具 Moq xUnit net 扩展 x