Java测试新技术TestNG和高级概念

分類: 图书,计算机/网络,程序设计,Java Java Script J2EE,
作者: 伯斯特(Beist,C.),苏雷曼(Suleiman,H.) 著,王海鹏 译
出 版 社: 机械工业出版社
出版时间: 2009-1-1字数:版次: 1页数: 324印刷时间:开本: 16开印次:纸张:I S B N : 9787111245506包装: 平装编辑推荐
TestNG创始人最新力作;介绍了大量新的测试模式和一些新工具;以实例展示测试模式。
企业级Java开发者必须实现更宽、更深的测试覆盖率,除了单元测试之外,还需要实现功能测试、统验收测试。本书介绍了突破性的Java测试技术和lTestNG,后者是一个强大的开放源代码Java测试平台。
Cedric Beust是TestNG的创始人,他和一流的JaVa开发者Hani Suleiman,向我们展示了一些强大的、灵活的测试模式,这些测试模式基本上可以适用于任何测试工具、框架或语言。他们展示了如何利用关键的Java平台改进来促进有效的测试,如依赖注入和模拟对象。还全面地介绍了TestNG,展示了它如何克服以前框架的一些局限以及如何利用新的技术,从而使得测试复杂的软件系统变得更容易。
本书讲求实用主义并关注结果,将帮助Java开发者为今天的关键任务环境创建更健壮的代码。
本书主要内容包括:
展示了与测试有关的折衷考虑,这样您就能在测试什么和怎么测试方面做出更好的决定。
介绍了TestNG,说明了它的目标和功能,并展示了如何在真实的环境中应用这些功能。
展示了如何集成TestNG和已有的代码、开发框架以及软件库。
展示了如何测试关键代码的特征,如封装、共享状态、范围和线程安全。
展示了如何测试应用程序元素,包括Java EE APls、数据库、Web页面和XML文件。
展示了高级技术:测试部分失败、工厂、依赖关系测试、远程调用、基于集群的测试服务器群等。
介绍了在Eclipse和IDE中安装TestNG插件。
包含了大量的代码示例。
无论您使用TestNG,JUnit或其他测试框架,本书提供的测试设计模式都会告诉您如何改进您的测试,对如何让代码和设计变得更可测试提供具体的建议。
内容简介
本书介绍了Java测试的新技术,主要内容包括:基本概念、测试设计模式、企业级测试、Java EE测试、集成和扩展TestNG等。本书通过针对有效测试Java应用程序以及围绕可测试性来设计应用程序和组件展示了这些有效的测试技术,并给出了每种测试方法的优点和不足,展示了解决常见问题的不同选择。
本书注重实际应用,适合对测试感兴趣的Java开发者参考阅读。
作者简介
Cedric Beust是Google的高级软件工程师,也是Java开发社区的一名积极成员,广泛参与了最新Java版本的开发。他是TestNG项目的发起人和主要贡献者。
目录
序
前言
致谢
第1章 起步
1.1 超越JUnit 3
1.2 JUnit 4
1.3 针对可测试性而设计
1.4 TestNG
1.5 本章小结
第2章 测试设计模式
2.1 针对失败而测试
2.2 工厂
2.3 数据驱动测试
2.4 异步测试
2.5 测试多线程代码
2.6 性能测试
2.7 模拟和桩
2.8 依赖的测试
2.9 继承和annotation范围
2.10 测试分组
2.11 代码覆盖率
2.12 本章小结
第3章 企业级测试
3.1 典型企业级场景
3.2 一个具体例子
3.3 测试实现
3.4 探索竞争消费者模式
3.5 重构的作用
3.6 本章小结
第4章 Java EE测试
4.1 容器内测试与容器外测试的对比
4.2 容器内测试
4.3 Java命名和目录接口(JNDI)
4.4 Java数据库连接(JDBC)
4.5 Java事务API(JTA)
4.6 Java消息服务(JMS)
4.7 Java持久API(JPA)
4.8 Enterprise JavaBeans 3.0(EJB3)
4.9 Java API for XML Web Services(JAX-WS)
4.10 Servlets
4.11 XML
4.12 本章小结
第5章 集成
5.1 Spring
5.2 Guice
5.3 DbUnit
5.4 HtmlUnit
5.5 Selenium
5.6 Swing UI测试
5.7 针对画图代码的测试
5.8 持续集成
5.9 本章小结
第6章 扩展TestNG
6.1 TestNG API
6.2 BeanShell
6.3 方法选择器
6.4 Annotation转换器
6.5 报告
6.6 编写自定义Annotation
6.7 本章小结
第7章 闲言碎语
7.1 动机
7.2 TestNG哲学
7.3 关注和提供异常
7.4 有状态的测试
7.5 测试驱动开发的缺点
7.6 测试私有方法
7.7 测试与封装
7.8 调试器的威力
7.9 记日志的最佳实践
7.10 时间的价值
7.11 本章小结
附录A IDE集成
附录B TestNG JavaDoc
附录C testng.xml
附录D 从JUnit迁移
书摘插图
第1章 起步
1.1 超越JUnit 3
像大多数Java开发者一样,我们使用JUnit的历史已经很长了,我们当然相信它使我们的测试更可靠健壮。但是这些年来,我们也遇到了这个框架中的一些不足,至少我们认为是这样的。
……