【问题标题】:Pex and F# in Visual Studio 2010 UltimateVisual Studio 2010 Ultimate 中的 Pex 和 F#
【发布时间】:2011-10-20 16:48:33
【问题描述】:

我一直在尝试在 F# 项目中使用 Pex,但我遇到了几个问题,希望得到一些帮助:

  1. Visual Studio Pex 插件工作了半小时,不适用于复杂的项目探索。

  2. 之后,每次我从 Visual Studio 2010 中运行 Pex 探索时,都会收到 !warning! [metadata] no explorations found after applying all filters; did you forget a [PexClass] or [PexMethod] attribute? 错误消息。如果我在进行探索时复制并粘贴由 Visual Studio 运行的命令并删除一些属性(如 sourceFilter ...)并从命令控制台运行它,那么我会得到一些生成的测试。知道为什么 Visual Studio 会生成无效命令吗?

  3. 一段时间后,Microsoft.Pex.Framework.dll 要么从 .Net 引用列表中消失,我必须使用其文件路径手动引用它,否则我什至无法再引用它,我必须卸载/重新安装 Pex。 (A reference to C:\Program Files (x86)\Microsoft Moles\PublicAssemblie\Microsoft.Pex.Framework.dll could not be added. Please make sure that the file is accessible, and that it is a valid assembly or COM component.)

当我处理 C# 项目时,不会出现所有这些问题。

学术版出现问题 1 2 3。

使用 MSDN 订阅者可用的版本,我从来没有在 Visual Studio 中工作(Visual Studio 2010 Ultimate NO SP1)。但是它可以在命令提示符下工作。这个版本我没有遇到问题 3。

有没有人设法让 Pex 在 Visual Studio 中使用 F#?如果是,你能告诉我你是怎么做到的吗?您使用哪个版本(VS 和 Pex)?

【问题讨论】:

  • 您可以在这些论坛中搜索过去的问题和回复;但该论坛已存档,支持在 StackOverflow 上发布问题。参考:bit.ly/nj252B
  • 谢谢大家,我在 Pex.exe 周围创建了一个包装器,我不使用 Visual Studio 与 F# 项目的集成:/

标签: visual-studio-2010 f# moles pex pex-and-moles


【解决方案1】:

我在使用 F# 运行 Pex 方面取得了一些成功。如果我相信我的下载文件夹,我使用的版本是 Microsoft Pex and Moles 0.94.51006.1 Release for (x86) 的学术版本。安装文件名为 pex.academic.x86.msi。

我不知道那个版本是否早于你的版本。

我的试验印象是 Pex 和 F# 不是一个很好的组合:Pex 坚持使用空输入创建测试用例。由于在 F# 中生成空值并不常见,这通常不是我感兴趣的场景。添加许多假设来消除那些让我 Pex 无法生成测试用例的假设。诚然,我正在测试的功能太复杂了,我仍然喜欢 Pex 背后的想法,并且可能会在更小/更简单的代码片段上再次尝试。

在 VS 2010 中使用 Pex 及其 GUI 效果相对较好,但并非没有挫败感。

【讨论】:

    猜你喜欢
    • 2012-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-15
    • 1970-01-01
    • 1970-01-01
    • 2011-02-17
    相关资源
    最近更新 更多