书籍详情
Java测试与设计:从单元测试到自动Web测试
![Java测试与设计:从单元测试到自动Web测试 Java测试与设计:从单元测试到自动Web测试](https://img.dushu.com/2006/05/27/08274562588085.jpg_200.jpg)
作者:(美)Frank Cohen著;周磊译;周磊译
出版社:清华大学出版社
出版时间:2005-09-01
ISBN:9787302116516
定价:¥39.80
购买这本书可以去
内容简介
Web基础架构无处不在。然而,在本书之前,介绍如何测试Web应用程序的可扩展性、性能和功能方面的书籍去少之甚少。本书指导您如何在设计、编程和测试中进行最佳选择。 书中将介绍一个快速有效的方法,教会您利用Java知识构建具有产品价值、可扩展性和高性能的Web应用程序。书中介绍的技术、方法和工具能够使软件开发人员、QA技术员和IT管理员高效地协同完成软件的开发和测试自动化。 通过本书,您可以了解到包装在下一代J2EE、.NET和开源项目中的新API、协议和工具的详细清单。因为这些新软件库、工具和技术具有实际的指导作用,所以利用它们能够设计出复杂、多功能、可协同操作的软件应用程序。 本书作者与您共享了他的一些实践经验,这些实践经验来自他在大型企业(如General Motors、BEA、AMP、2Wire、Elsevier、U.S.Navy、Sun)中工作所积累的丰富阅历,他还为Web应用程序的自动化测试提供了一些有效的开源工具、技术和代码。
作者简介
Frank,资深咨询顾问,是Push ToTest公司的创始人,他也是流行的TestMaker开源项目的维护者。他领导了开发软件行业是最成功的一些产品,其中包括Norton Utilities for Macintosh、Stacker和SoftWindows。
目录
第1章 影响Web使能软件的因素
1.1 软件开发的三个基本原理
1.2 新领域-- Web使能应用程序
1.3 目前编写高质量的软件为什么非常困难
1.3.1 2.0版本可靠性的神话
1.3.2 对目标的管理请求
1.3.3 在异构规则的情况下使用同构规则
1.3.4 带有bug的语言
1.3.5 邪恶孪生副总统问题
1.4 软件开发简史
1.4.1 Web使能应用程序
1.4.2 测试图和生命周期过程
1.5 测试方法
1.5.1 点击流测试
1.5.2 单元测试
1.5.3 功能系统测试
1.5.4 可扩展性和性能测试
1.5.5 服务质量测试
1.6 定义测试代理
1.7 为单个用户进行的测试
1.8 创建智能测试代理
1.9 本章小结
第2章 应用程序的性能何时会带来问题
2.1 什么是标准
2.2 Web性能的标准
2.2.1 功能有效吗
2.2.2 性能可以接受吗
2.2.3 失效的频率是多少
2.3 Web使能应用程序的度量工具
2.4 优秀性能的四种测试
2.5 优秀测试代理的组成部分
2.6 Web使能应用程序的类型
2.7 Web使能应用程序点系统
2.8 Web使能应用程序的框架
2.8.1 饼体系结构
2.8.2 采用饼体系结构和智能测试代理
2.9 在饼环境下建立智能测试代理
2.9.1 脚本语言和测试代理
2.9.2 产生有意义的数据
2.10 本章小结
第3章 模拟测试
3.1 为有意义的测试结果模拟用户行为
3.2 生命周期、项目和人的本性
3.3 Mircomax生命周期
3.3.1 问题分类
3.3.2 问题排序
3.3.3 报告问题
3.3.4 评价问题的准则
3.4 Web使能应用程序的测试
3.4.1 功能和可扩展性测试
3.4.2 功能性测试
3.4.3 可扩展性测试
3.4.4 测试功能和可扩展性的模块
3.4.5 管理风格
3.5 服务级别约定
3.6 网格计算和智能测试代理
3.6.1 简单安装、使用和维护的方法
3.6.2 自维护系统
3.7 理解性能和可扩展性准则
3.7.1 定义SPC
3.7.2 运转中的SPC
3.8 模拟用户目标
3.8.1 测试状态
3.8.2 使用UML和代码注释对测试进行建模
3.8.3 整体考虑测试
3.9 本章小结
第4章 Java开发和测试自动化工具
4.1 3次潮流
4.1.1 桌面应用程序的开发和测试自动化
4.1.2 客户/服务器应用程序的开发和测试自动化
4.1.3 Web使能应用程序的开发和测试自动化
4.2 troika-- 第4次潮流
4.3 测试自动化生命周期
4.4 本章小结
第5章 从方法学到设计的途径
5.1 实现troika的工具
5.2 怎样获得TestMaker
5.3 五分钟学会TestMaker
5.4 运行TestMaker
5.4.1 熟悉TestMaker图形环境
5.4.2 打开并运行测试代理
5.4.3 通过新代理向导建立代理
5.5 喜欢Jython的原因
5.5.1 Jython十分快速
5.5.2 可以免费获得数据结构和列表迭代
5.5.3 自动选择类型的动态变量
5.5.4 函数是一流的
5.5.5 Java集成
5.5.6 Bean属性内省
5.5.7 Sun公司正在采用Java中的脚本
5.6 使用Jython并入Junit
5.6.1 JUnit用于可重复测试
5.6.2 一个JUnit示例
5.6.3 JUnit和TestMaker
5.7 本章小结
第6章 HTTP/HTML环境中的设计与测试
6.1 HTTP/HTML环境
6.2 HTTP/HTML环境中的常见错误
6.2.1 兼容性和浏览器缓存
6.2.2 无效数据
6.2.3 会话问题
6.2.4 创建HTTP测试代理
6.3 现有的HTTP通信
6.3.1 理解cookie、会话和重定向
6.3.2 验证响应数据
6.4 本章小结
第7章 协调SOAP和XML Web服务
7.1 Web服务简介
7.2 用于Web互操作的XML-RPC
7.3 XML-RPC的缺点
7.4 SOAP的全局互操作性
7.5 Web服务可扩展性技术
7.6 Web服务互操作性问题
7.6.1 发现
7.6.2 定义
7.6.3 请求和响应
7.6.4 展望
7.7 利用TestMaker来理解WSDL
7.7.1 构造SOAP调用
7.7.2 不同类型的SOAP调用
7.8 验证响应数据
7.9 使编写代理更容易
7.10 资源
7.11 本章小结
第8章 状态、设计和测试
8.1 状态问题
8.2 测试有状态系统的生命周期
8.3 建立状态的技术
8.4 准备和安装代理
8.5 使用数据库配置测试
8.6 使用Lingo使测试内容更接近真实
8.7 本章小结
第9章 集成.NET Web服务
9.1 互操作性和集成
9.2 .NET的不同之处
9.2.1 文档样式的可扩展性
9.2.2 .NET中的SOAP头
9.2.3 WSDL .NET样式
9.3 .NET环境的测试代理
9.4 近期需要考虑的事项
9.5 本章小结
第10章 创建与测试Intranet和安全环境
10.1 基础知识
10.1.1 路由安全
10.1.2 虚拟专用网
10.1.3 网络段和子网
10.1.4 传输安全
10.1.5 SSL上的SOAP
10.1.6 .NET护照授权
10.1.7 HTTP基本授权
10.2 SOAP和安全
10.3 产生认证和密钥库
10.4 本章小结
第11章 从构造到测试Web应用程序框架
11.1 交易办公桌和智能测试代理
11.2 可扩展的测试目标
11.3 系统基础架构
11.4 用户原型
11.5 理解测试需求
11.6 构造测试
11.7 将用户原型实现为代码模块
11.8 实现主组件
11.8.1 安装
11.8.2 运行
11.8.3 清除
11.8.4 用于测试配置的属性文件
11.9 实现日志组件
11.10 避免测试可扩展性问题
11.11 本章小结
第12章 将测试代理结果转换为行为知识
12.1 分析测试结果得到的信息
12.1.1 目标:我们的新Web站点需要处理50个并发用户的峰值负载
12.1.2 目标:Web站点注册页需要万无一失
12.1.3 目标:顾客的月末报告请求不能减慢订购服务
12.1.4 目标总结
12.2 五大问题模式
12.2.1 资源问题
12.2.2 并发问题
12.2.3 组件问题
12.2.4 竞争问题
12.2.5 崩溃的恢复问题
12.3 结果分析中的主要因素
12.4 结果数据产生误导的几种情形
12.4.1 节点问题
12.4.2 隐藏的错误
12.4.3 Dileep的困惑
12.4.4 消除反复
12.5 再论股票交易示例
12.6 本章小结
第13章 高容量数据中心的并发性和可扩展性
13.1 简介
13.2 2Wire组件管理系统
13.2.1 了解在网络上发生的事情
13.2.2 复杂环境中的测试
13.3 测试方法
13.4 测试环境需要考虑的事项
13.5 测试环境的约束
13.6 本章小结
第14章 为SOAP的可扩展性进行正确选择
14.1 SOAP流行的原因
14.2 SOAP编码类型
14.3 简单对象访问需要简单的测试
14.4 是否让开发工具来决定编码类型
14.5 性能工具包
14.5.1 如何获得性能工具包
14.5.2 安装性能工具包
14.5.3 开始安装
14.6 其他事项
14.7 本章小结
第15章 电子邮件环境中的多协议测试
15.1 需要和益处
15.2 限定项目的范围
15.3 测试设计和方法学
15.4 安装和配置
15.4.1 从原型到测试代理脚本
15.4.2 创建Muriel
15.4.3 创建Marilyn
15.5 结果分析
15.6 本章小结
1.1 软件开发的三个基本原理
1.2 新领域-- Web使能应用程序
1.3 目前编写高质量的软件为什么非常困难
1.3.1 2.0版本可靠性的神话
1.3.2 对目标的管理请求
1.3.3 在异构规则的情况下使用同构规则
1.3.4 带有bug的语言
1.3.5 邪恶孪生副总统问题
1.4 软件开发简史
1.4.1 Web使能应用程序
1.4.2 测试图和生命周期过程
1.5 测试方法
1.5.1 点击流测试
1.5.2 单元测试
1.5.3 功能系统测试
1.5.4 可扩展性和性能测试
1.5.5 服务质量测试
1.6 定义测试代理
1.7 为单个用户进行的测试
1.8 创建智能测试代理
1.9 本章小结
第2章 应用程序的性能何时会带来问题
2.1 什么是标准
2.2 Web性能的标准
2.2.1 功能有效吗
2.2.2 性能可以接受吗
2.2.3 失效的频率是多少
2.3 Web使能应用程序的度量工具
2.4 优秀性能的四种测试
2.5 优秀测试代理的组成部分
2.6 Web使能应用程序的类型
2.7 Web使能应用程序点系统
2.8 Web使能应用程序的框架
2.8.1 饼体系结构
2.8.2 采用饼体系结构和智能测试代理
2.9 在饼环境下建立智能测试代理
2.9.1 脚本语言和测试代理
2.9.2 产生有意义的数据
2.10 本章小结
第3章 模拟测试
3.1 为有意义的测试结果模拟用户行为
3.2 生命周期、项目和人的本性
3.3 Mircomax生命周期
3.3.1 问题分类
3.3.2 问题排序
3.3.3 报告问题
3.3.4 评价问题的准则
3.4 Web使能应用程序的测试
3.4.1 功能和可扩展性测试
3.4.2 功能性测试
3.4.3 可扩展性测试
3.4.4 测试功能和可扩展性的模块
3.4.5 管理风格
3.5 服务级别约定
3.6 网格计算和智能测试代理
3.6.1 简单安装、使用和维护的方法
3.6.2 自维护系统
3.7 理解性能和可扩展性准则
3.7.1 定义SPC
3.7.2 运转中的SPC
3.8 模拟用户目标
3.8.1 测试状态
3.8.2 使用UML和代码注释对测试进行建模
3.8.3 整体考虑测试
3.9 本章小结
第4章 Java开发和测试自动化工具
4.1 3次潮流
4.1.1 桌面应用程序的开发和测试自动化
4.1.2 客户/服务器应用程序的开发和测试自动化
4.1.3 Web使能应用程序的开发和测试自动化
4.2 troika-- 第4次潮流
4.3 测试自动化生命周期
4.4 本章小结
第5章 从方法学到设计的途径
5.1 实现troika的工具
5.2 怎样获得TestMaker
5.3 五分钟学会TestMaker
5.4 运行TestMaker
5.4.1 熟悉TestMaker图形环境
5.4.2 打开并运行测试代理
5.4.3 通过新代理向导建立代理
5.5 喜欢Jython的原因
5.5.1 Jython十分快速
5.5.2 可以免费获得数据结构和列表迭代
5.5.3 自动选择类型的动态变量
5.5.4 函数是一流的
5.5.5 Java集成
5.5.6 Bean属性内省
5.5.7 Sun公司正在采用Java中的脚本
5.6 使用Jython并入Junit
5.6.1 JUnit用于可重复测试
5.6.2 一个JUnit示例
5.6.3 JUnit和TestMaker
5.7 本章小结
第6章 HTTP/HTML环境中的设计与测试
6.1 HTTP/HTML环境
6.2 HTTP/HTML环境中的常见错误
6.2.1 兼容性和浏览器缓存
6.2.2 无效数据
6.2.3 会话问题
6.2.4 创建HTTP测试代理
6.3 现有的HTTP通信
6.3.1 理解cookie、会话和重定向
6.3.2 验证响应数据
6.4 本章小结
第7章 协调SOAP和XML Web服务
7.1 Web服务简介
7.2 用于Web互操作的XML-RPC
7.3 XML-RPC的缺点
7.4 SOAP的全局互操作性
7.5 Web服务可扩展性技术
7.6 Web服务互操作性问题
7.6.1 发现
7.6.2 定义
7.6.3 请求和响应
7.6.4 展望
7.7 利用TestMaker来理解WSDL
7.7.1 构造SOAP调用
7.7.2 不同类型的SOAP调用
7.8 验证响应数据
7.9 使编写代理更容易
7.10 资源
7.11 本章小结
第8章 状态、设计和测试
8.1 状态问题
8.2 测试有状态系统的生命周期
8.3 建立状态的技术
8.4 准备和安装代理
8.5 使用数据库配置测试
8.6 使用Lingo使测试内容更接近真实
8.7 本章小结
第9章 集成.NET Web服务
9.1 互操作性和集成
9.2 .NET的不同之处
9.2.1 文档样式的可扩展性
9.2.2 .NET中的SOAP头
9.2.3 WSDL .NET样式
9.3 .NET环境的测试代理
9.4 近期需要考虑的事项
9.5 本章小结
第10章 创建与测试Intranet和安全环境
10.1 基础知识
10.1.1 路由安全
10.1.2 虚拟专用网
10.1.3 网络段和子网
10.1.4 传输安全
10.1.5 SSL上的SOAP
10.1.6 .NET护照授权
10.1.7 HTTP基本授权
10.2 SOAP和安全
10.3 产生认证和密钥库
10.4 本章小结
第11章 从构造到测试Web应用程序框架
11.1 交易办公桌和智能测试代理
11.2 可扩展的测试目标
11.3 系统基础架构
11.4 用户原型
11.5 理解测试需求
11.6 构造测试
11.7 将用户原型实现为代码模块
11.8 实现主组件
11.8.1 安装
11.8.2 运行
11.8.3 清除
11.8.4 用于测试配置的属性文件
11.9 实现日志组件
11.10 避免测试可扩展性问题
11.11 本章小结
第12章 将测试代理结果转换为行为知识
12.1 分析测试结果得到的信息
12.1.1 目标:我们的新Web站点需要处理50个并发用户的峰值负载
12.1.2 目标:Web站点注册页需要万无一失
12.1.3 目标:顾客的月末报告请求不能减慢订购服务
12.1.4 目标总结
12.2 五大问题模式
12.2.1 资源问题
12.2.2 并发问题
12.2.3 组件问题
12.2.4 竞争问题
12.2.5 崩溃的恢复问题
12.3 结果分析中的主要因素
12.4 结果数据产生误导的几种情形
12.4.1 节点问题
12.4.2 隐藏的错误
12.4.3 Dileep的困惑
12.4.4 消除反复
12.5 再论股票交易示例
12.6 本章小结
第13章 高容量数据中心的并发性和可扩展性
13.1 简介
13.2 2Wire组件管理系统
13.2.1 了解在网络上发生的事情
13.2.2 复杂环境中的测试
13.3 测试方法
13.4 测试环境需要考虑的事项
13.5 测试环境的约束
13.6 本章小结
第14章 为SOAP的可扩展性进行正确选择
14.1 SOAP流行的原因
14.2 SOAP编码类型
14.3 简单对象访问需要简单的测试
14.4 是否让开发工具来决定编码类型
14.5 性能工具包
14.5.1 如何获得性能工具包
14.5.2 安装性能工具包
14.5.3 开始安装
14.6 其他事项
14.7 本章小结
第15章 电子邮件环境中的多协议测试
15.1 需要和益处
15.2 限定项目的范围
15.3 测试设计和方法学
15.4 安装和配置
15.4.1 从原型到测试代理脚本
15.4.2 创建Muriel
15.4.3 创建Marilyn
15.5 结果分析
15.6 本章小结
猜您喜欢