写点什么

访谈:新一代 Java 测试:TestNG 和高阶理念

  • 2008-03-07
  • 本文字数:760 字

    阅读完需:约 2 分钟

InfoQ.com 最近采访了新一代Java 测试:TestNG 和高阶理念的作者Hani Suleiman 和Cédric Beust,就针对这本书和他们对测试的总体看法进行了讨论。InfoQ 很荣幸在这里给大家提供该书第二章的节选,“Mocks 和Stubs”。

Cédric Beust 谈到如何令代码变得更加可测试时,说道:

  • 避免静态。非常不幸,由于存在很多难测的代码,使 singleton 和近似的模式把静态变得相当受欢迎。解决这个问题的一个方法是使用依赖注射框架(Hani 和我就很推崇 Guice,我们在书中有提到,但 Spring 也是一个很好的选择)。
  • 别再对“修改代码使之更易测试”而犹豫不决。如果这个修改意味着要将 private 函数改成 protected 或者 public,这常常是个可行的好主意。因为“激活自动测试能力”所得到的收益,往往要比“将函数变得更可见带来的潜在维护成本”要大得多。
  • 接口并没有像很多人希望你所相信得那样糟糕。很多 XP 开发员会跟你说不要引入任何接口,除非你确定至少会有两个类来实现该接口,但我们的处境是每个具体类潜在由两种不同的方式使用:产品中或者测试中。抽取出接口常常是使得你的代码更干净利落更易测试的举动。

Hani Suleiman 还提到,数据库测试是较难测试的内容之一。

的确,有很多工具能够帮助你完成数据库测试,也有很多的技术能够帮助你简化一些相关难题,但我尚未听说有一套好的解决方案,用于为迁移数据而编写测试。如果你根据一组静态数据写测试的话,那么你就会逐渐与真正运行中数据库背道而驰。如果你使用运行中的备份数据的话,那你就不得不处理安全因素,而且你必须确信你没有将敏感数据暴露给开发人员。在银行业,产品世界更是和开发有着严重的屏蔽。所以在保证数据库测试普遍有用性且能与自动测试并发,是需要很多技巧的。

查看文章全文:访谈及书摘:Hani Suleiman 和 Cedric Beust,《新一代Java 测试: TestNG 和高阶理念》 ****

2008-03-07 07:061228
用户头像

发布了 100 篇内容, 共 24.5 次阅读, 收获喜欢 5 次。

关注

评论

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

AI推理服务平台升级,阿里云机器学习PAI推出新规格

阿里云大数据AI技术

人工智能 机器学习 模型 在线服务

以技术赋能智慧酒店,思岚科技亮相上海酒店展

科技热闻

对谈阿里云祝顺民:经济复苏,云网络如何加速企业效率提升?

云布道师

云网络

Bigasoft Video Downloader Pro :视频网站下载和转换视频器

Rose

World Clock Deluxe for Mac(世界时钟豪华版)

Rose

PCB拼板,不得不注意的10个问题!

华秋PCB

电路 PCB PCB设计 拼版 邮票孔

如何实现对 Oracle 的实时数据捕获和性能调优|Flink CDC 专题

Apache Flink

大数据 flink 实时计算

英特尔宋继强:面向半导体“万亿时代”,以全栈创新推动算力发展

科技热闻

经验分享|如何用ChatGPT开发一个安卓应用

Onegun

人工智能 移动开发 ChatGPT

互联网出海风大雨大,融云助力 App 守护用户「被遗忘权」

融云 RongCloud

互联网 安全 融云 泛娱乐

免费广告效果监测服务,实现全链路营销效果跟踪

HarmonyOS SDK

HMS Core

软件测试/测试开发丨ChatGPT在软件测试领域的应用

测试人

软件测试 自动化测试 测试开发 ChatGPT

基于 LowCodeEngine 的低代码组件体系建设和实践

阿里技术

前端 低代码

AutoCAD(CAD2024)中文特别版Mac/win

Rose

CAD绘图 cad2024激活版

一文读懂华为云云原生产品及开源实践

华为云开发者联盟

开源 云原生 华为云 华为云开发者联盟 企业号 4 月 PK 榜

等保三级对日志审计的要求是什么?有堡垒机还需要日志审计系统吗?

行云管家

堡垒机 日志审计 等保三级

提高API采用率的关键:快速创建有效的API监控任务

云智慧AIOps社区

API api 网关 监控宝 API Gateway 监控产品

Visual Studio Code for Mac(好用的微软代码编辑器)中文版

Rose

昇思MindSpore:人工智能的创新之源

极客天地

KaiwuDB 亮相中国石油石化企业信息技术交流大会

KaiwuDB

数字能源 KaiwuDB 数据解决方案

知名度比较高的堡垒机有哪些?大家喜欢哪款?

行云管家

堡垒机 行云管家

开发板如何适配OpenHarmony 3.2

OpenHarmony开发者

Open Harmony

毕业设计 - 电商秒杀系统

架构实战营 「架构实战营」

IT采购,不再默默扛下“背刺”

脑极体

AI ChatGPT

精彩回顾 | 2023工赋Meetup—上海站

工赋开发者社区

百度研发效能从度量到数字化蜕变之路

百度Geek说

百度 研发效能 企业号 4 月 PK 榜 效能数字化

对于处理高并发用户请求的一些思考

Java 架构 分布式 高并发

访谈:新一代Java测试:TestNG和高阶理念_Java_乔梁_InfoQ精选文章