- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 stats that Buildbot provides 不是特别满意。我知道它是用于构建而不是测试 - 这就是为什么它有步骤的概念,但没有测试的概念。在很多情况下,您仍然需要从构建结果中测试统计数据。例如,在比较不同平台上跳过和失败的测试以估计更改的影响时。
那么,需要什么才能让 Buildbot 在结果中显示测试计数?
最简单的方法是什么,让一个对 Buildbot 一无所知的人可以在 15 分钟内完成此操作?
最佳答案
根据您想要如何处理测试结果以及如何呈现测试结果,Buildbot 确实提供了一个 Test
步骤,buildbot.steps.shell.Test
我如何将它用于构建环境的示例:
from buildbot.steps import shell
class CustomStepResult(shell.Test):
description = 'Analyzing results'
descriptionDone = 'Results analyzed'
def __init__(self, log_file = None, *args, **kwargs):
self._log_file = log_file
shell.Test.__init__(self, *args, **kwargs)
self.addFactoryArguments(log_file = log_file)
def start(self):
if not os.path.exists(self._log_file):
self.finished(results.FAILURE)
self.step_status.setText('TestResult XML file not found !')
else:
import xml.etree.ElementTree as etree
tree = etree.parse(self._log_file)
root = tree.getroot()
passing = len(root.findall('./testsuite/testcase/success'))
skipped = len(root.findall('./testsuite/testcase/skip'))
fails = len(root.findall('./testsuite/error')) + len(root.findall('./testsuite/testcase/error')) + len(root.findall('./testsuite/testcase/failure'))
self.setTestResults(total = fails+passing+skipped, failed = fails, passed = passing)
## the final status for WARNINGS is green but the step itself will be orange
self.finished(results.SUCCESS if fails == 0 else results.WARNINGS)
self.step_status.setText(self.describe(True))
在配置工厂中,我创建了一个步骤,如下所示:
factory.addStep(CustomStepResult(log_file = log_file))
基本上,我会覆盖默认的 Test
shell 步骤并传递包含测试结果的自定义 XML 文件。然后,我查找“通过/失败/跳过”结果节点,并相应地在瀑布中显示结果。
关于buildbot - 在 buildbot 中显示测试计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25462570/
我最近一直在研究 buildbot,由于缺乏良好的文档和示例配置,因此很难理解 buildbot 的常用用法。 根据 buildbot 手册,每个 buildmaster 负责 1 个代码库。这意味着
BuildBot 中是否可以有多个源结帐步骤?我找不到任何明确的文档,但似乎在 BuildBot 中进行源 checkout 也会将当前工作目录更改为 checkout 目录,这意味着不清楚从另一个存
我正在使用 buildbot在一个项目中,我设置了一个调度程序,每次发生更改时都会自动构建项目,以测试它是否编译正常。这有效并且 buildbot 检测到所有分支上的更改,但调度程序始终构建 mast
我对 stats that Buildbot provides 不是特别满意。我知道它是用于构建而不是测试 - 这就是为什么它有步骤的概念,但没有测试的概念。在很多情况下,您仍然需要从构建结果中测试统
我想保存夜间构建的副本,我认为将每个构建放入其自己的每日文件夹中是个好主意。但是,我无法使用 buildbot master.cfg 中的时间,因为它是在配置时设置的: copy_files = ["
我正在尝试为我的 自定义 webstatus 模板构建机器人 0.8.8 安装 根据文档: Buildbot 使用模板系统作为 Web 界面。这些模板的源代码可以在 buildbot 库区域的 sta
我正在设置 buildbot 以使用 iCloud 电子邮件地址作为状态目标: m = mail.MailNotifier(fromaddr="some_icloud_user@me.com",
当前,Buildbot不支持多个存储库。如果希望这样做,则需要运行Buildbot的单独实例。 不过,我仍然很好奇是否有人想出一种创造性的解决方法来使此功能正常运行。 最佳答案 更新 该答案最近遭到了
我正在设置一个构建环境,其中包含一个唯一的主 buildbot 和多个 buildslave。我有多个构建器,它们将在可用的从站上运行。构建器可以被强制触发或安排为每晚构建运行,或者可以安排为在检
在构建一些分支时,我需要跳过构建步骤。 更准确地说,我想执行一个 ShellCommand仅当要运行的脚本存在于源代码树中时才执行 step。 我试过: ShellCommand(command=["
比如说,我有一个项目有 4 个不同的工作( build 者): 图书馆 二进制文件 A(依赖于库) 二进制 B(依赖库) 包(依赖二进制A和二进制B) 我想使用 BuildBot 设置持续集成。目前,
我遇到了一个问题,其中 buildbot 有太多待处理的作业并且已停止执行更多构建。即使我重新启动 buildbot,挂起的作业也不会消失。我希望能够进行构建并删除挂起的作业。我该怎么做? 最佳答案
因此,我尝试将 buildbot 安装到 OS X 计算机上,但无法通过 setup.py 文件安装它。当我尝试运行:sudo python setup.py build时,它返回了: error i
我有一个为软件项目运行的 buildbot 安装程序,我正在尝试像这样设置电子邮件通知: from buildbot.status import mail c['status'].append(mai
我想尝试一下 buildbot。所以我按照教程做了这些: sudo pip install virtualenv 'buildbot[bundle]' virtualenv bb-master 源 b
我有一个带有一些构建器和两台从机的构建机器人。 有些构建器可以在一台从机上运行,有些可以在两台机器上运行。 buildbot 将使用什么算法来安排构建?它是否会注意到一些构建器只能在一个从站上运行
我正在使用 buildbot作为持续集成工具。在 Linux 和 Windows 平台上运行提交构建和每晚构建都非常完美。 对于 commit builds (在每次提交时触发)和 nightly b
我的 windows slave buildbot 上的文件上传速度极慢,我遇到了一个奇怪的问题。例如,上传 60Mb 文件需要将近 2 分钟,而同一网络上的相同 zip 文件只需要几秒钟。 为了解决
我在 Windows7 上运行 Buildbot 版本 0.8.8。 我有一个配置 (master.cfg) 文件,它使用一个小技巧创建了所有构建器。我从颠覆中读取了一个 XML 文件,其中列出了构建
在 Interpolate 中使用属性或源标记属性之前,是否有一种好的方法对其执行字符串转换?我们在分支名称中使用斜杠,我需要将斜杠转换为破折号,以便在文件名中使用它们。 也就是说,假设我有分支“fe
我是一名优秀的程序员,十分优秀!