开发区域

用MATLAB开发高级软件

把它和詹金斯联系起来

现在我们已经有了MATLAB项目,可以自我描述如何测试它们,让我来看看我暗示的内容最后发表.特别是,设置项目并准备使用自动CI构建是多么容易。我们已经讨论了很多次在这个博客上如何在Jenkins上处理MATLAB和Simulink代码,但我们从未讨论过我们如何使它金宝app更容易为您工作。这需要纠正!

事实证明,我们一直在做一些事情。特别是,我们一直在做的“事情”之一是提供一个Jenkins插件,以减少您启动并运行MATLAB和Simulink构建所需的时间和精力。金宝app

这与MATLAB中现在提供的测试感知项目相结合,实现了真正的按钮式Jenkins体验(对于那些更喜欢按钮的人来说,也是一种配置为代码的体验)。让我们看看我们最喜欢的新项目libdirective是如何做到这一点的。

上次我们对它进行了项目化,并启用了测试标签来帮助定义项目中的测试。现在Jenkins插件知道该做什么了。想看看它的实际效果吗?我也是,走吧。

首先你得安装插件。这其实很简单,你可以在詹金斯插件索引

从那里,您或您的Jenkins管理员可以下载并直接安装它。然而,它实际上更容易安装直接在Jenkins。

现在插件已经安装好了,让我们开始设置项目。所需要的只是

  1. 将git详细信息指向libdirective
  2. 如果需要,请指定MATLAB在构建代理上的位置。如果在系统PATH上已经用MATLAB配置了构建代理,则不需要此步骤。在插件中指定的位置将简单地将指定的MATLAB位置添加到PATH中,但如果从终端或shell调用“MATLAB”在构建机器上找到正确的所需MATLAB,可以跳过此操作。
  3. 现在我们可以继续在项目中运行MATLAB测试了。您甚至可以通过单击访问来生成各种测试工件,如测试结果、报告和覆盖率信息。使用这些构件,您可以利用Jenkins环境的各种其他插件和特性来更深入地了解您的构建。

此处显示了所有这3个步骤:

超级简单,但当我们运行构建时,我们会看到它失败了:

如果您熟悉该项目,查看测试结果可以清楚地看出,这些测试失败是因为缺少所需的mex文件。当然我们需要一个构建步骤。为此,我们可以利用插件提供的另一个构建步骤来运行任意MATLAB命令。这个存储库被很好地配置为有一种简单的方法来构建它的所有mex文件,它是一个名为编译所有.在运行测试之前的构建步骤中,先调用该函数,然后再调用打开项目,这就是我们需要做的一切。

这就是我们如何使用Jenkins插件快速轻松地建立MATLAB构建的方法。它是如此简单,以至于你很容易意识不到它给你带来的一些东西:

  1. MATLAB和Simulink CI工件的快速简便生成金宝app
  2. 最小的CI配置
  3. 无需了解为CI构建启动MATLAB的“最佳方式”。您再也不会忘记try/catch或记住17b中所需的精确的MATLAB启动选项,以获得在CI中运行MATLAB的最佳方式
  4. 金宝app支持测试工作流程回到13b,甚至支持矩阵构建,用于在不同平台上测试不同版本的MATLAB。您只需要指定要使用的MATLAB命令或测试配置。所有其他的都由插件处理。

好了,Jenkins插件总是做它的一部分,以帮助改进您的CI工作流与MATLAB和Simulink。金宝app

我们还收到了一些不使用Jenkins的用户的来信,他们对其他CI平台和服务感兴趣。请放心,我们也在努力支持其他平台,而且还有更多的东西要写博客。您对哪些CI平台感兴趣?金宝app




发布与MATLAB®R2020b

|

评论

如需留言,请点击在这里登录到您的MathWorks帐户或创建新帐户。