0

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

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

但是,这有时会失败,因为构建会生成两个快照(snapshot.dtpsnapshot-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 build 777.0.20190124.112417。版权所有 (C) 2019 JetBrains sro

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

[16:01:10][Step 12/14] Executable='[file path]\nunit3-console.exe' (non-child) 被传递用于过滤

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

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

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

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

有谁知道确保排除 nunit3-console.exe 以使其不生成快照文件的方法?

4

1 回答 1

0

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

我已经创建了问题

于 2019-02-21T19:01:31.183 回答