我一直在尝试在F#项目中使用Pex,但我遇到了几个问题,希望能得到帮助:
Visual Studio Pex插件工作了半个小时,但对于复杂的项目探索无用。
此后,每次我从Visual Studio 2010中运行Pex Exploration时,都会收到
!warning! [metadata] no explorations found after applying all filters; did you forget a [PexClass] or [PexMethod] attribute?
错误消息。如果我复制并粘贴Visual Studio执行探索时运行的命令,并删除一些属性(如sourceFilter…),然后从命令控制台运行它,那么我就会得到一些生成的测试。为什么Visual Studio会生成一个无效的命令呢?过一段时间,Microsoft.Pex.Framework.dll文件就不再出现在.NET引用列表中,我必须手动引用它的文件路径,或者我甚至无法再引用它,必须卸载/重新安装Pex。(
A reference to C:\Program Files (x86)\Microsoft Moles\PublicAssemblies\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。
有人成功地在Visual Studio内将Pex与F#一起使用吗?如果是,请告诉我你是如何做到的?你使用哪些版本(VS和Pex)?