AICon 上海站|90%日程已就绪,解锁Al未来! 了解详情
写点什么

Atlassian 的 Pete Moore 阐述 Clover 2 的新特性

  • 2007-10-29
  • 本文字数:1532 字

    阅读完需:约 5 分钟

Atlassian 在今年前些时候并购了 Cengqu 并发布了Clover 2。Clover 是一个Java 代码覆盖工具。

Clover 2 这个版本有以下特征:

  • 测试结果与代码覆盖率的充分集成
  • 每个测试都有代码覆盖率报告
  • 覆盖云图显示测试热点
  • 彩色的 HTML 格式的报告,可以进行方法缩放,等等
  • 对每个方法都有覆盖分析
  • 复杂性分析
  • 简化的 Ant 任务
  • 集成的历史报告
  • 聚集的包分析
  • 可配置报告栏目,栏目格式与栏目阀值
  • 提高了运行时记录覆盖率的性能
  • 新增了运行时配置选项用来控制记录覆盖率
  • 全新的 Eclipse plugin

Clover 2 针对 IntelliJ, Netbeans 和其他 IDE 的更新 plugin 即将发布。InfoQ 与 Atlassian 的 Pete Moore 讨论了 Clover 2 以及最近的并购。第一个问题是为什么 Cenqua 与 Atlassian 合作多年后同意被并购 :

Cenqua 是一个 dot com 咨询公司的私生子。它的核心目标不是盈利,而是让咨询客户满意和减少工作时间。基本上是 Brendan, Matt, Conor 和我决定使用一些在公司业务蓬勃发展期间完善过的内部工具来进行运营……开发人员的确可以成为一起工作的有趣的顾客,对吧? 经过飘忽的四年之后,我们有了四个产品,数以千计的顾客和少量职员。我们尽力的维持公司,但是最初激励公司的生活方式的因素已经变得衰弱了。Atlassian 始终是激情洋溢的,我们喜欢他们的东西,与他们合并就像过桥一样自然,这样做是有意义的。

接下来 InfoQ 询问了 Cenqua 作为 Atlassian 的一部分后发生了哪些变化:

开会,很多令人精疲力尽的会。但是严肃的来说,我们迅速的壮大了我们的团队,有了专门的支持资源,慢慢的提高了我们的速度。总之,我们开始实现某些我们已经期待已久的特征。

然后话题转移到 Atlassian 如何保持 Clover 的激动人心的特性。Moore 解释说 Clover 不仅仅是覆盖工具,而且增加了许多其他 Clover 的克隆产品所没有的重要的价值。他提到的特征中有新的 Quick Winds 和项目风险覆盖云图。 Quick Wins 覆盖云图显示了可以快速提升你的整个项目的测试覆盖率的重点类,你可以把精力重点放到测试这些类上。 项目风险覆盖云图能够高亮包含了最复杂且未经测试的代码的类,这些类往往是项目中风险最高的部分。InfoQ 随后和 Moore 讨论了 Atlassian 的顾客使用 Clover 2 的一些有趣的方式。下面是其中一些回答:

  • 预构——在开始重构之前,使用 Clover 2 的报告找出哪些测试会受到重构的影响,这些测试的质量,洞察预计的变化并帮助评估重构。
  • 使用覆盖云图从遗留代码的基础上构建一套测试。从云图中挑选 bug 最多,最红的类来写测试,然后重新生成覆盖云图并重复这一过程。

有相当多的人说他们喜欢有鲜艳色彩的,交叉引用的可以导航的 HTML 版本的代码覆盖报告。覆盖注解仅仅是锦上添花而已。

最后 Moore 谈了 Clover 2 的下一步打算是什么:

首先是一定要发布它!然后我们有了一些打算,例如:

  • 作为持续集成测试优化(从 Bamboo 开始)的使能者
  • 明确的找出使得测试失败的那寥寥几行代码
  • 为 Intellij 开发一个 Clover 2 的 plugin
  • 用我们加入复杂性指标的类似方法来合并其他指标。(比如识别出 findbugs 中有坏气味的代码的可怜的覆盖率,会对测试有所帮助)
  • 用 Clove 来为 Crucible 代码审核增加自动分析功能
  • 其他有趣的覆盖率检查,不仅仅是当覆盖率低于例如 a% 的时候才亮红灯。还可以在对新代码的覆盖不符合原则的时候或者代码改变降低了覆盖率的时候亮红灯。

我们不断的提出有趣的想法,谢谢 Atlassian 使得我们现在有时间来实现这些想法。

查看英文原文 Atlassian’s Pete Moore Discusses The New Features of Clover 2 - - - - - -

译者简介: 曹云飞,西安交通大学计算机软件硕士。现就职于 Ethos ,热衷于新技术的钻研,软件架构与敏捷开发,目前从事 Home Control 方面的工作。参与 InfoQ 中文站内容建设,请邮件至 china-editorial[at]infoq.com

2007-10-29 10:291182
用户头像

发布了 47 篇内容, 共 11.5 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

Chappyz 生态迎重磅利好:多链应用程序启动、100% 收入共享计划开启

股市老人

C 语言运算符详解

小万哥

c c++ 程序员 后端 软件开发

如何写好Prompt,让GPT 的回答更加精准

Bob Lin

人工智能 openai ChatGPT GPT-4 langchain

金融行业核心系统最佳搭档|如何基于PolarDB分布式版打造两地三中心架构?

阿里云瑶池数据库

金融行业 阿里云; 阿里云瑶池数据库

从一份IDC行业报告,解开智慧园区的“达·芬奇密码”

脑极体

AI 数字园区

【Web安全】DVWA漏洞靶场搭建流程(win系统下)

Geek_Angel

网络安全 WEB安全 DVWA 实验靶场

开源时代:极狐GitLab如何保证软件供应链安全

极狐GitLab

使用 Amazon Fault Injection Service 演示多区域和多可用区应用程序弹性

亚马逊云科技 (Amazon Web Services)

S3 Amazon EC2 Amazon RDS Amazon DynamoDB Amazon ECS

web3钱包进阶!从入门到精通,Bitget实现逆袭

股市老人

诚邀报名|与你同行——开源教育晨雾中的早行者

开放原子开源基金会

开源

脉脉宣布全员下调,华为莫名奇妙躺枪。。。

Jackpop

软件测试/测试开发|测试用例设计方法——等价类划分

霍格沃兹测试开发学社

创梦天地与华为达成鸿蒙合作

新消费日报

诚邀报名|来开源项目维护者论坛,为项目可持续发展贡献您的声音

开放原子开源基金会

开源

Seata:打造行业首个分布式事务产品

阿里巴巴云原生

阿里云 云原生 dubbo

软件测试/测试开发|selenium NoSuchDriverException问题解决

霍格沃兹测试开发学社

诚邀报名|探寻AI融合的前端开发之道:解除焦虑,构建核心竞争力

开放原子开源基金会

开源

宏 | AI工程化部署

AIWeker

c AI AI工程化部署

华为终于开奖了,结果有点可笑

Jackpop

软件测试/测试开发|Ubuntu系统常用文件管理命令详解

霍格沃兹测试开发学社

5G和云渲染将如何快速推进XR和元宇宙?

3DCAT实时渲染

云渲染 元宇宙解决方案

#issue 111538 MySQL 8.0 instant add/drop column 性能回退问题

ba0tiao

MySQL InnoDB

拐点已至?2023中国企业数智化应用年度洞察

B Impact

大数据时代:我对大数据的发展趋势与前景展望

屿小夏

大数据

倒计时3天|开源开发者的技术年末盛典即将开启

开放原子开源基金会

开源

centos 7.6安装sealos和单机集群

麦兜

智能高效|AIRIOT智慧货运管理解决方案

AIRIOT

物联网 智慧货运 智慧系统

一款双极锁存型霍尔位置传感器

芯动大师

Atlassian的Pete Moore阐述Clover 2的新特性_Java_Scott Delap_InfoQ精选文章