TeamCity的DotTrace插件-进程过滤器不排除nunit3-console.exe

时间:2019-02-19 16:43:11

标签: teamcity dottrace

我想寻求有关为我们的TeamCity构建中的一个设置DotTrace插件的帮助-到目前为止,我已经按照此处的说明进行操作,并且得到了一个有时可行的构建:

https://blog.jetbrains.com/dotnet/2016/02/16/performance-profiling-in-continuous-integration-an-updated-dottrace-plugin-to-teamcity/

但是,有时有时会失败,因为该版本会生成两个快照( snapshot.dtp snapshot-2.dtp )。

经过反复试验,我发现有时失败的原因是我的测试有时出现在第一个.dtp文件(DotTrace的Reporter.exe使用的文件)中,有时出现在第二个文件。

另一个.dtp文件似乎与nunit3-console.exe程序相关联,因此应该排除在外,因为我已经将该程序添加到TeamCity构建设置中的“处理过滤器”中:

*nunit3-console.exe

(我在这里尝试了所有组合,包括输入标准文件路径)

这具有在运行探查器时将以下行添加到dotTrace.project.xml文件中的作用:

<ProcessNameFilter>*nunit3-console.exe</ProcessNameFilter>

我的理解是,这应该阻止对命名的进程进行概要分析(这样就不会生成额外的.dtp文件。但是,在构建运行时,我在日志文件中看到以下几行:

  

[16:01:04] [步骤12/14] dotTrace Console Profiler 2018.3.2内部版本777.0.20190124.112417。版权所有(C)2019 JetBrains s.r.o。

     

[16:01:10] [步骤12/14]正在进行分析...

     

[16:01:10] [步骤12/14] Executable ='[文件路径] \ nunit3-console.exe'(非子级)正在传递以进行过滤

     

[16:01:10] [步骤12/14]通过的过滤器可执行文件='[文件路径] \ nunit3-console.exe'

这表明nunit3-console.exe没有像过滤器所建议的那样被排除。

我可以在这里找到最接近的建议,它似乎暗示了我在做什么,但仅适用于NUnit 2:

https://www.jetbrains.com/help/profiler/Profiling_Guidelines__Profiling_Unit_Tests.html

有人知道确保排除nunit3-console.exe以便不产生快照文件的方法吗?

1 个答案:

答案 0 :(得分:0)

此插件会根据设计生成多个快照,并根据所有快照生成报告,因此此处无需过滤。

我已经创建了issue