有没有办法在我的NUnit单元测试中使用EQATEC分析器?

时间:2011-05-26 22:19:57

标签: c# c#-4.0 nunit testdriven.net eqatec

我想在我的NUnit单元测试中使用EQATEC探查器,就像我以前使用JetBrains dotTrace以及TestDriven.NET和NUnit一样。有没有办法做到这一点?事实上,似乎我需要将我的UnitTest包装在一个控制台应用程序中,然后使用它上的探查器。

2 个答案:

答案 0 :(得分:3)

EQATEC Profiler实际上非常适合自动化:它有一个命令行版本和一个API,您可以使用它来控制分析的大多数方面,您只需在单元测试中使用它。

API在探查器user guide中描述。你想做的事情可能是这样的:

  1. 首先添加对profiler-API的引用。您将在已安装的RuntimeDLL文件夹中找到四个不同平台的程序集。您可能正在寻找EQATEC.Profiler.RuntimeFullNet.dll,但也有NetCF,Silverlight和WP7的实现。
  2. 现在,您可以在单元测试中添加代码,以便随时获取计时快照,并使用EQATEC.Profiler.Runtime.TakeSnapshot()方法将其保存到您选择的文件中。稍后可以在分析器中检查这些报告文件。
  3. 请记住,您仍需要使用分析器对已编译的单元测试进行检测并运行已检测的版本,但这可以使用命令行版本的分析器EQATECProfilerCmd.exe自动执行。这真的很简单,就像这样:

    EQATECProfilerCmd -build <your app directory>
    

答案 1 :(得分:0)

我喜欢在Visual Studio中的Post-build事件命令行中使用构建变量。 EQATECProfilerCmd不喜欢路径末尾的反斜杠,所以我这样做:

“C:\ Program Files(x86)\ EQATEC \ EQATECProfiler \ EQATECProfilerCmd”-build“$(TargetDir)。”

请注意我是如何在命令末尾包含句点的。 还要注意我如何在路径上放置引号,因为我知道路径中有空格。