如何在软件开发工作流中构建
远见卓识视图, 显示每个测试在运行时的执行时间
假设你是一个希望成长为一家中型科技公司的初创企业--介于30到100---之间。招聘是快速发生的, 而且你的代码数量也在快速增长。在较早的阶段, 贵公司---于证明产品。一切都是规模较小, 你可以循环快速。现在, 随着你的成长, 你有更多的在编写代码和更多的变量的组合。
这是当你注意到产品开始恶化, 你不能像你希望的那样快速发布代码。在扩展业务时, 有越来越多的变量需要进行调整, 您可能会忽略更多测试的需要, 并在测试上花费更多的时间。
如果你决定聘请一个 qa 经理, 而后者又带来了一批自动化---, 你就可以走出困境。硒测试的覆盖率---。但随着时间的推移, 事情又开始放慢了。所有的自动化和善意, 你建立了硒覆盖开始---和失败, 它反复暂停软件工厂。
我们开始的地方
当我加入 shutterstock 时, 我对公司的自动化测试覆盖率印象深刻。几乎每一个功能的网站上都有测试覆盖率的形式, 硒端对点测试。shutterstock 有一个开发工作流程的地方通过詹金斯, 将阻止部署到生产, 如果硒测试失败。我喜欢这样;这意味着除非所有的测试都通过了, 否则任何人都不能将任何东西放到生产中。
但不久之后, 我意识到, 我们的公司, 这是每天发布多次, 已经变成了一个公司, 现在被禁止发布多天一次, 主要是因为失败的硒测试。常见的情况是, 测试失败不是因为产品损坏, 而是因为它们很脆弱。
一些事情导致了这一点:
终端端 selenium-based 验收测试成为了每个人都依赖于测试的唯yi形式的自动化测试。许多团队甚至停止编写单元测试。
测试框架是片状的, 是由 qa 团队建立和拥有的。当某件事情失败, 整个软件工厂停止运转时, qa 团队中一小部分三到五人的错误就落在了我们身上, 他们经常被指责为放慢了组织的速度。
工程组织花了很多时间来研究如何构建一个可以扩展的产品, 但是没有足够的注意力去构建一个支持这种产品开发的开发工作流程。
完全由 qa 团队拥有。
在我们的, 我们有一个 qa 组织, 它没有与组织的其他部分进行扩展。虽然他们拥有自动化所有内容的技能, 但是他们缺乏构建可伸缩的测试框架所需的技能。由于这种差距, 他们无法影响组织的其他人认为是---拥有的东西, 而不仅仅是 qa 团队。为了弥合这一差距, 我们不得不重新考虑我们对 qa 整体的态度。
迈向新的开始
我想完成两个目标: 首先, 重建 shutterstock 的测试基础架构/框架, 使其稳定, 其次, 改变 shutterstock 的工程文化, 使之成为一个不是由测试工程团队拥有的,sonarqube开源代码管理软件, 而是由每个人来拥有。
我们改变了招聘测试---时所期待的能力。我们希望我们的测试---成为---的开发人员, 他们知道如何构建 object-oriented 的解决方案, 从而帮助他们创建一个稳定且可扩展的测试框架。我们也希望他们成为有影响力的人, 他们可以推动他们的团队做正确的事情, 而不采取跳过单元测试这样的捷径。一旦我们建立了一个 world-class 测试工程团队, 我们就开始了解如何快速发布, 同时保持一个的产品。
我们知道我们da的问题是脆弱的测试, 所以我们建立了一个叫做 睿智 的工具来记录每个测试的通过/失败数据。我们所有的测试都把数据推入睿智, 每次他们作为我们的詹金斯工作流程的一部分运行。然后, 我们在这个数据库之上建立了一个网站, 使数据的挖掘变得容易。我们现在能够监控工作的合格率、个别测试的及格率、常见的失败消息、的运行测试, 等等。有了这些数据, 我们就可以保持自己和其他人的责任感。我们的一个团队受影响的失败的测试认识到, 他们通常的传球率只有20%。(试想一下,sonarqube开源代码管理软件, 由于这一路障, 软件工厂经常停下来。通过使用远见卓识, 他们能够快速隔离测试的di合格率, 并在这些测试中看到常见的失败消息。团队对测试---进行了简单的修复, 以提高其---性。





如何使用 sonarqube 改进工作流
twitter作为开发人员, 我不得不多次修复生产环境中的问题。有时, 我在代码之前没有看到任何错误, 而在其他时间, 我花了很多时间试图理解别人写的代码-更糟的是, 我把代码放到生产中, 在几个月后发现了安全漏洞。
很可能你也面对过这种情况。因此, 有一个工具, 可以帮助您在早期阶段检测到它们, 岂不是很棒吗?sonarqube 使这成为可能。在这篇文章中, 您将了解它如何帮助您清理代码并防止将来出现问题。
sonarqube 入门sonarqube 是一个开放源码的管理平台, 致力于不断分析和测量技术, 从早的计划阶段到生产。通过将静态和动态分析工具结合在一起, sonarqube 连续监视七轴上的代码, 如重复代码、编码标准、单元测试、复杂代码、潜在 bug、注释和设计以及体系结构。
sonarqube 是一种用于主要编程语言的代码分析器, 如 c/c++、javasc ript、java、c#、php 或 python, 等等。通常, 应用程序同时使用多种编程语言, 例如: java、javasc ript 和 html 的组合。sonarqube 自动检测这些语言并调用相应的分析器。
sonarqube 现在是 bitnami 目录的一部分。您可以或推出它与我们准备使用的云图像只需几次---和开始使用它在您的所有项目。利用 bitnami 图像的特点: 安全、xin、优化、一致等。
玩 sonarqube在这个 github 的项目中, 您将找到一个用 javasc ript 编写的代码示例。目标: 向您展示如何将 sonarqube 合并到您的开发工作流中。存储库包含两个主文件夹 (源和测试), 这样, 您就可以知道测试所涵盖的代码的百分比。
这个项目还包括一个声纳工程. 属性文件, 其中有一些配置参数需要配置 sonarqube, 如用户名, 密码, 语言等。
运行
$ 声纳-扫描仪在项目文件夹内, 这样就启动了第yi个扫描仪, 您可以在 web 界面中检查结果。
第yi次扫描
正如您在上面的截图中所看到的, 当前的代码有零 bug、零漏洞和六代码的气味。
我将修改源代码以引入一个 bug 和一个漏洞。这一次是有意的, 但是在日常的工作中, 这样的问题会在你没有意识到的情况下出现。
添加错误
再次运行扫描仪使用
$ 声纳-扫描仪如预期的那样, 将出现新的 bug 和漏洞。再次检查分析以查看所做的更改:
比较扫描
屏幕右侧将出现一个新节 (以黄色高亮显示)。sonarqube 处理两种状态: 当前状态 (以白色表示) 和xin更改。正如您在截图中所看到的, 上次扫描中引入的更改增加了一个 bug 和一个漏洞。sonarqube 评估每个部分的, 评分基于不同的参数, 一个是jia状态。在这种情况下, 引入 bug 导致 bug 部分从 a 传递到 c, 漏洞 部分从 a 到 b。
您可以设置 泄漏期间 来确定要进行比较的方式: 按时间或在每个扫描仪执行之间。
让我们详细地看看 覆盖率 一节: 38.1% 是测试覆盖率 (正如您在 github 存储库中看到的那样, 我对某些文件进行了测试, 但对于所有的文档都没有)。在黄色部分, 您可以看到新添加的行的覆盖率。以前, 为了添加错误, 我引入了一些新行,sonarqube开源代码管理软件, 但我没有为这些新行创建任何测试, 因此新的测试覆盖率为0%。此外, ---覆盖范围, 我可以看到更多的信息的覆盖面, 例如: 覆盖的文件, 覆盖线的数量, 等等。
错误信息
通过这种快速而简单的分析 (您只需执行一个命令), 您将能够防止出现在生产环境中的错误, 使代码保持安全并遵守jia做法和标准。在下面的迭代中, 我将致力于实现零 bug、漏洞和代码气味的目标。我还可以在测试中得到100% 的代码。一旦我的代码处于这种状态, 就很容易看出所做的更改是否引入了某种错误或坏的做法。
如何挤压 sonarqube正如您在上一节中看到的, 保持代码的---状态非常简单。但是, 还有更多的发现。sonarqube 有很多很酷的集成。
分析方法可以在下列分析方法之间进行选择:
用于 msbuild 的 sonarqube 扫描仪:. net 项目的启动分析sonarqube 扫描器: maven 的启动分析和xiao配置sonarqube 扫描器 gradle: 发射 gradle 分析蚂蚁 sonarqube 扫描器: 蚂蚁发射分析詹金斯 sonarqube 扫描仪: 詹金斯发射分析sonarqube 扫描仪: 当其他分析器都不合适时,sonarqube开源代码管理软件, 从命令行启动分析插件另外, sonarqube 有一个更新中心与各种各样的插件组织入不同的类别, 一些有用的插件是:
代码分析器
sonarcfamily c/c++sonarphpsonarjssonarwebsonarjavacss集成
github 插件: 分析拉请求, 并---问题作为---。谷歌分析: 将 google 分析------添加到 sonarqube 的 web 应用程序中。单片机引擎
善变的: 增加对善变的支持。git: 添加对 git 的支持。svn: 添加对 subversion 的支持。身份验证和授权
github 身份验证: 通过 github 启用用户身份验证和单一登录。gitlab 身份验证: 通过 gitlab 启用用户身份验证和单一登录。谷歌: 启用用户身份验证授权到谷歌。读过这篇文章后, 你可能想尝试 sonarqube, 看看它是如何融入你的日常工作的。您可以直接从 bitnami 目录或启动它。
快乐 (和安全) 编码!






sonarsource 从洞察风险合作伙伴获得4500万美元的少数---投资代码的市场使用资金加速增长
---提供sonarsource, 洞察风险合作伙伴2016年11月29日, 09:13 et分享这篇文章
日内瓦, 瑞士, 2016年11月29日/prnewswire/-sonarsource, 代码管理的, 今天---关闭4500万美元的少数---投资的风险投资和私人股本公司, 洞察风险的合作伙伴。理查德·威尔斯, 董事总经理, 保利·盖托, 洞察力的副总裁将加入公司董事会。
sonarsource 在瑞士成立于 2008年, 由奥利维尔 gaudin, 弗雷迪槌和西蒙 brandhof, 提供产品的连续代码的应用程序。由8万多家公司所采用, 开源解决方案从---上改变了管理应用程序的可维护性、---性和安全性的方法。此外, sonarsource 为超过700客户提供了企业级解决方案, 其中包括 ebay、美国银行和宝马, 以及50家---100强组织。
自筹公司自成立以来已大幅增长, 并将利用新的资本进一步加速增长, 并继续追求它的愿景, 使开发人员能够不断发布高度可维护、---且安全的代码。
sonarsource 成立的目标是成为领xian的解决技术债wu、降低维护成本和运营风险, 终开发---的软件, sonarsource 的---奥利维尔 gaudin 说。 我们与洞察风险合作伙伴的合作, 使我们能够从他们的知识和支持, 以建立一个性的组织, 大力促进我们的业务增长, 并解决我们迅速扩大的市场。
代码管理已经成为那些保持不断扩大的代码基础的公司的关键问题, 而 sonarsource 已经成为行业标准, 理查德. 威尔斯说。我们---兴在我们的公司阵容中添加 sonarsource, 因为他们继续为企业和组织提供---的解决方案来管理他们的代码库。
关于 sonarsource:sonarsource 为连续代码提供了 world-class 的解决方案。其开源和商用产品帮助客户管理其应用程序的代码, 降低其风险, 并终提供---的软件。sonarsource 解决方案支持开发20种编程语言, 如 java、c#、javasc ript、c/c++、cobol 等。拥有700多个客户, 包括 ebay, 美国银行, 泰雷兹, 宝马, 以及超过8万组织使用 sonarsource 的产品是事实上的市场标准。欲了解更多信息,
关于洞察风险合作伙伴:洞察风险合作伙伴是一家领xian的风险投资和私人股本公司, 投资于高增长的软件和支持互联网的公司, 它们正在推动其行业的变革。成立于 1995年, 洞察力已筹集超过130亿美元, 并投资于超过250家公司。我们的使命是寻找、资助和成功地与富有远见的管理人员一起为他们提供实际的、动手的成长专长, 以促进长期的成功。有关洞察力及其所有投资的更多信息,
sonarqube开源代码管理软件-华克斯由苏州华克斯信息科技有限公司提供。“loadrunner,fortify,源代码审计,源代码扫描”选择苏州华克斯信息科技有限公司,公司位于:苏州工业园区新平街388号,多年来,华克斯坚持为客户提供好的服务,联系人:华克斯。欢迎广大新老客户来电,来函,亲临指导,洽谈业务。华克斯期待成为您的长期合作伙伴!
联系我们时请一定说明是在100招商网上看到的此信息,谢谢!
本文链接:https://tztz192713a1.zhaoshang100.com/zhaoshang/276356882.html
关键词: