问题标签 [teamcity-8.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-studio-2013 - 如何解决 TeamCity 中缺少的测试覆盖率问题?
根据日志,我缺少获取测试覆盖率的信息。可能的原因有:
- 包含/排除模式不正确
- 程序集在没有调试信息的情况下编译
- PDB 文件不可用
- 为 MSTest 启用了 Visual Studio 代码覆盖率
- TESTRUNCONFIG 用于 MSTest 并且未禁用 Visual Studio 代码覆盖率
作为 TeamCity 的新手,我需要一些关于如何操作的指导。
- 我已经通过+:*DLL 包含了所有 DLL。目前没有排除,但我试图通过-:*test*省略测试本身。
- 我使用DEBUG配置文件进行编译,并将结果放在服务器上的bin/debug和obj/debug目录中。根本没有释放。
- 我在服务器上的.source/bin/debug中有 PDB 文件。
- 由于我在 TeamCity 服务器上运行 nUnit 和 dotCover,因此不涉及 VS。
- 由于我在 TeamCity 服务器上运行 nUnit 和 dotCover,因此不涉及 VS。
我想念什么?我还能做什么?
编辑
该系统是:VS13、TFS10、TC8.2(最新可用的包含 nUnit 和 dotCoverage)
作为测试步骤的日志部分(编译步骤中没有报告错误,退出代码 0)。在此之后,仅删除 dotCover 快照文件。但是请注意,找不到 DATA 文件,并且 XML 文件不包含数据。
我可以在这里做什么?
[10:59:39]第 2/2 步:测试(NUnit)(29 秒)
[10:59:39]开始:C:\TeamCity\buildAgent\plugins\dotnetPlugin
\bin\JetBrains.BuildServer.NUnitLauncher.exe #TeamCityImplicit
[10:59:39]在目录:C:\TeamCity\buildAgent\work\263aa919ed5f7bb8
[10:59:46]JetBrains dotCover Console Runner v2.6.1000.602。版权所有 (c) 2009-2014 JetBrains sro 保留所有权利。
[10:59:55][JetBrains dotCover] 覆盖会话开始 [2014-06-30 10:59:55]
[11:00:02] 启动 TeamCity NUnit 测试运行
器 [11:00:02] 运行 NUnit-2.6。 .NET Framework v4.0 x64
[11:00:03]AutonomousTesting.dll
[11:00:03]CoverageTest.TestExample.TestEquality
[11:00:03]CoverageTest.TestExample.TestException下的 3 个测试
[11:00:03]CoverageTest.TestExample.TestInequality
[11:00:03]CoverageTest.TestExample.TestOmission
[11:00:03]测试被忽略:CoverageTest.TestExample.TestOmission
[11:00:05]AutonomousTesting.dll
[ 11:00:05]CoverageTest.TestExample.TestEquality
[11:00:05]CoverageTest.TestExample.TestException
[11:00:05]CoverageTest.TestExample.TestInequality
[11:00:05]CoverageTest.TestExample.TestOmission
[11: 00:05] 测试被忽略:CoverageTest.TestExample.TestOmission
[11:00:07][JetBrains dotCover] Coverage session 已完成 [2014-06-30 11:00:07]
[11:00:07][JetBrains dotCover] Coverage结果后处理开始 [2014-06-30 11:00:07]
[11:00:08][JetBrains dotCover] Coverage 结果后处理完成 [2014-06-30 11:00:08]
[11:00:09]##teamcity[importData type='dotNetCoverage' tool='dotcover 'file='C:\TeamCity\buildAgent\temp\buildTmp\coverage_dotcover16594618384737853441.data']
[11:00:09]从'C:\TeamCity\buildAgent\temp\buildTmp\coverage_dotcover16594618384737853441.data'导入数据(8.38 KB)使用“dotNetCoverage”处理器 [11:00:09]进程以代码 0 退出
[11:00:09]等待 1 个服务进程完成
[11:00:09]处理 1 个覆盖率报告
[11:00: 09]通过dotcover为文件生成覆盖率报告:[C:\TeamCity\buildAgent\temp\buildTmp\coverage_dotcover16594618384737853441.data]
[11:00:09]获取dotCover版本
[11:00:09] 启动 dotCover:C:\TeamCity\buildAgent\tools\dotCover\dotCover.exe 版本 C:\TeamCity\buildAgent\temp\buildTmp\dotCover4472367238745438467Version
[11:00:09]输出:JetBrains dotCover Console Runner v2.6.1000.602。版权所有 (c) 2009-2014 JetBrains sro 保留所有权利。
[11:00:09]dotCover exited with code: 0
[11:00:09]Use DotCover 2.6.x commands set
[11:00:09]Merge dotCover reports (9s)
[11:00:19]Started dotCover: C:\TeamCity\buildAgent\tools\dotCover\dotCover.exe 合并 C:\TeamCity\buildAgent\temp\buildTmp\dotcover4719506578346509917.xml
[11:00:19]输出:JetBrains dotCover Console Runner v2.6.1000.602。版权所有 (c) 2009-2014 JetBrains sro 保留所有权利。[JetBrains dotCover] 快照合并开始 [2014-06-30 11:00:18] [JetBrains dotCover] 源快照数:1 [JetBrains dotCover] 快照合并完成 [2014-06-30 11:00:19]
[11: 00:19]dotCover 退出代码:0
rest - 使用 REST API 更新 Teamcity 配置参数规范
我需要使用 Teamcity REST API 更新配置参数的规范。
按照REST 文档,我尝试了一个 PUT 请求,其参数值如下:
但这会更新参数的值,但是我需要更新参数的规范。我正在使用 Teamcity 8.0.6
android - build.xml 中的 TeamCity build.counter 参数
似乎 TeamCity 参数 ${build.counter} 在我们的 ant build.xml 中没有解析。我们有:
这会引发错误:
不允许使用字符串类型(在 'versionCode' 处,值为 '${build.counter}')
看起来它将参数“$ {build.counter}”作为文字字符串。
使用另一个 TeamCity 整数参数代替 ${build.counter},例如 ${teamcity.build.id},可以正常工作。
有谁知道这可能是为什么?
更新
感谢 Biswajit_86 的回答。这也是我与 JetBrains 的相关讨论:
teamcity - 如何在 TeamCity 中实施删除文件夹步骤
在 TeamCity 8.1 中,我刚刚提取了我的源代码,我想做的第一件事就是从我刚刚检索到的内容中删除一堆子文件夹。
我不能在“结帐规则”中使用排除项,所以我想我需要一个单独的步骤才能在检索源代码后立即运行。
我想我需要一个命令行步骤?如果是这样,我似乎找不到太多关于使用它删除多个子文件夹的信息?
有这方面经验的人吗?
testing - 与测试执行分开运行测试覆盖率
我们正在 TeamCity 中配置构建步骤。由于我们在测试覆盖率报告方面存在巨大问题(它们在那里,然后莫名其妙地消失了),我们正试图找到一个工作低谷(提出和解决与我们的问题直接相关的问题会产生非常冷淡的回应)。
请注意,我不是在寻找意见,而是在寻找技术知识库来支持(或扼杀)我们的选择。是的,我检查了构建日志 - 这些都发布在另一个线程中。这个问题是关于尝试替代方法的(in?)理智。:)
- 是否建议运行一个构建步骤进行测试,然后再运行另一个构建步骤进行测试覆盖?
- 在单独的构建步骤中运行这些甚至有意义吗?!
- 与测试本身捆绑/分开运行覆盖有什么好处和坏处?
c# - 在测试项目上工作的测试覆盖率,但在被测试的 DLL 上为零
我已经建立了一个测试类,如下所示。
当我运行测试时,我在测试程序集上得到的值高于零,但在测试目标的程序集上却恰好为零。我到底做了什么傻事?!我还应该提供哪些信息?
测试的类是超级基础的,如下所示。
使用系统;
当我在构建服务器上运行这些东西时,我都得到了很好的结果,但在 VS13 本地 - 奇怪的事情发生了。我得到了最新的 nUnit/dotCover 并且在其他项目中都按预期工作。诡异的...
teamcity - 仅在检测到 VCS 检出时 .java 文件的更改时触发 TeamCity 构建
TeamCity 中是否有一个命令或参数,其中只有在进行 VCS 签出时提交了至少一个 java 文件时才会触发构建?我正在使用 TeamCity 8.1.3。
unit-testing - 如何列出 TeamCity 服务器的所有设置更改?
在几天的课程中,我每隔三个小时进行一次测试。一切都以飞扬的绿色过去了。然后,突然发生了故障。我检查了签入,没有新签入(删除一些评论时对 BAT 文件的更改除外)。现在测试准确地每秒钟通过一次。当它们失败时(恰好每隔一秒,总是由于相同的三种测试方法)。
上述更改不可能导致测试失败,因为它只是删除了echo行,文件本身在构建/测试期间不运行,甚至在安装之前都没有被复制,并且为了使其超级超级可靠,对它的更改已被撤回。
所以,只剩下两种可能的解释:
- 这是由于魔法,非常糟糕的一种。
- 服务器上的设置发生了一些变化。
我将在 Stack Exchange Sorcery 上发布一个相应的问题,但现在,让我们专注于第二项 - 对服务器设置的更改。:)
当我点击周围时,我可以看到谁进行了最后一次更改以及何时进行的。我还可以获得以前变化的历史记录。最重要的是 - 我可以看到发生了什么变化。但是,这种方法意味着要完成所有构建步骤、配置、存储库等。这样做既不可行也不明智,更不用说我一定会忘记或错过一些晦涩的设置(鉴于墨菲定律,那将是死狗埋葬的确切地点)。
问题:是否可以在一张综合表格中列出所有设置的所有更改,包括但不一定限于进行更改的配置文件、更改的场合和更改的内容?
git - 触发快照依赖以在 TeamCity 中构建特定分支
假设我有一个项目Foo配置了具有默认分支的 Git VCS root feature/foo
。我想对项目Bar有一个快照依赖项,该项目在与Foo相同的存储库上对每个功能分支进行单元测试(即Bar的 VCS 根没有默认分支,而是在监视feature/*
)。
我看到发生的是Foo只能在Bar 的 <default>
分支上触发构建。我可以更改它以便为正确的分支触发Bar吗?
c# - 从 TeamCity 运行控制台应用程序失败
我正在尝试从 TeamCity 构建步骤调用控制台应用程序(用 c# 编写)。该应用程序从 TFS 文件夹中提取脚本并在数据库上执行它们。
TeamCity 在尝试执行应用程序时抛出以下错误:
当我打开命令提示符并键入:
C:\Utilities\DatabaseUpdateAgent\DatabaseUpdateAgent\bin\Debug\DatabaseUpdateAgent.exe 主
它运行没有问题。错误来自此代码:
TeamCity 在 TFS 连接代码方面有什么不同,导致它在由 TeamCity 执行时无法运行,但如果手动执行则可以完美运行?