万本电子书0元读

万本电子书0元读

顶部广告

编写可测试的JavaScript代码电子书

  本书试图在良好发实践和JavaScript 之间建立一个桥梁,试图结合测试和质量保证(QA)两个方面几十年的研究和经验教训,将这些经验教训应用于JavaScript。   作者曾先后在YouTube、Yahoo!以及Google等公司从事前端发及测试相关工作,具有丰富的经验。   随着越来越多的专业程序员始使用JavaScript 语言,这种语言的**实践始被   理解和编纂测试JavaScript代码是一个复杂的过程。本书将在很大程度上帮你简化该过程。

售       价:¥

纸质售价:¥41.20购买纸书

92人正在读 | 3人评论 6.2

作       者:[美] Mark Ethan Trostler 托斯勒 著

出  版  社:人民邮电出版社

出版时间:2015-02-01

字       数:14.1万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(3条)
  • 读书简介
  • 目录
  • 累计评论(3条)
JavaScript专业发人员必须具备的一个技能是能够编写可测试的代码。 本书的目标是教授如何为客户端和服务器编写和维护可测试的JavaScript代码。全书共8章。首先介绍了什么是可测试的代码,然后分别从代码复杂度、架构、单元测试、代码覆盖率、集成测试、性能测试、负载测试、调试和自动化等角度详细介绍。书中丰富的示例能够帮助读者从头始养成好的代码编写习惯,提升测试效率及代码的可维护性。 本书的作者曾先后在YouTube、Yahoo!以及Google等公司从事前端发及测试相关工作,具有丰富的经验。本书主要针对那些想成为JavaScript专业发人员的人;也适合初中级水平或者专家级别的发人员参考阅读。  <br/>【推荐语】<br/>本书试图在良好发实践和JavaScript 之间建立一个桥梁,试图结合测试和质量保证(QA)两个方面几十年的研究和经验教训,将这些经验教训应用于JavaScript。 作者曾先后在YouTube、Yahoo!以及Google等公司从事前端发及测试相关工作,具有丰富的经验。 随着越来越多的专业程序员始使用JavaScript 语言,这种语言的**实践始被 理解和编纂测试JavaScript代码是一个复杂的过程。本书将在很大程度上帮你简化该过程。 JavaScript专业发人员必须具备的一个技能是编写可测试的代码。不管是创建新应用程序,还是重写遗留代码,本书都将向你展示如何为客户端和服务器编写和维护可测试的JavaScript代码。 从减少代码复杂性的方法,到单元测试、代码覆盖率、调试以及自动化,你将全面学到如何编写出让自己和同事能够轻松修复和维护的JavaScript代码。测试JavaScript代码是一个复杂的过程。本书将在很大程度上帮你简化该过程。 整体了解敏捷、测试驱动发、行为驱动发; 使用静态语言模式和JavaScript标准减少代码复杂性; 学习基于事件的架构优势,包括模块化、松耦合、可重用性; 在功能和应用程序层面上探索用于编写和运行单元测试的相关工具; 生成代码覆盖率,衡量测试范围和测试有效性; 使用Selenium或CasperJS行集成测试、性能测试、负载测试; 使用浏览器内置工具、Node.js、移动、生产环境调试; 理解什么是自动化发,何时以及如何行自动化发。  <br/>【作者】<br/>Mark Ethan Trostler有超过20年编写和测试代码的经验。拥有加州大学圣地亚哥分校的计算机科学/哲学双学位,曾就职于创业公司(IPivot)和大公司(高通、英特尔、Redback Networks、Juniper Networks、Yahoo!、目前在谷歌),Mark一直致力于提高代码质量。之前在Yahoo! Mail团队任职高级首席前端工程师,他对Yahoo! Mail*改版中的先锋测试和质量控制提供了帮助。<br/>
目录展开

内容提要

O'Reilly Media,Inc.介绍

作者简介

封面介绍

前言

第1章 可测试的JavaScript

1.1 现有技术

1.1.1 敏捷开发

1.1.2 测试驱动开发

1.1.3 行为驱动开发

1.1.4 哪种方式最好

1.2 代码是让人用的

1.2.1 为何要编写可测试的代码

1.2.2 什么是可测试的代码

1.2.3 如何编写可测试的代码

1.3 卓越的应用程序代码

1.3.1 测试

1.3.2 调试

1.4 小结

第2章 复杂度

2.1 代码大小

2.2 JSLint

2.3 圈复杂度

2.4 重用

2.5 扇出

2.6 扇入

2.7 耦合

2.7.1 内容耦合

2.7.2 公共耦合

2.7.3 控制耦合

2.7.4 印记耦合

2.7.5 数据耦合

2.7.6 无耦合

2.7.7 实例化

2.8 耦合性度量

2.9 现实中的耦合

测试耦合代码

2.10 依赖注入

2.11 注释

2.11.1 YUIDoc

2.11.2 JSDoc

2.11.3 Docco/Rocco

2.12 人工测试

2.13 小结

第3章 基于事件的架构

3.1 基于事件编程的好处

3.2 事件集线器

3.2.1 使用事件集线器

3.2.2 事件的响应

3.2.3 基于事件的架构与MVC架构

3.2.4 基于事件的架构与面向对象编程

3.2.5 基于事件的架构与软件即服务

3.3 Web应用程序

3.4 测试基于事件的架构

3.5 基于事件架构的说明

3.5.1 可伸缩性

3.5.2 广播

3.5.3 运行时检测

3.5.4 安全性

3.5.5 状态

3.6 更智能的集线器:事件交换机

3.6.1 部署

3.6.2 一种实现

3.6.3 会话

3.6.4 可扩展性

3.7 小结

第4章 单元测试

4.1 单元测试框架

4.2 开始编写测试

4.3 编写好的单元测试

4.3.1 隔离

4.3.2 范围

4.3.3 定义函数

4.3.4 正向测试

4.3.5 负向测试

4.3.6 代码覆盖率

4.4 真实场景测试

4.4.1 依赖项

4.4.2 异步测试

4.5 运行客户端JavaScript单元测试

4.5.1 PhantomJS

4.5.2 Selenium

4.6 运行服务器端JavaScript单元测试

Jasmine

4.7 小结

第5章 代码覆盖率

5.1 覆盖率基础理论

5.2 代码覆盖率数据

5.3 实际例子

5.3.1 转换instrumented文件

5.3.2 coveraged文件剖析

5.4 练习/部署

5.4.1 客户端JavaScript

5.4.2 服务器端JavaScript

5.5 持久化覆盖率信息

5.5.1 单元测试

5.5.2 集成测试

5.6 生成输出

5.7 聚合

5.8 隐藏的文件

5.9 覆盖率目标

5.10 小结

第6章 集成测试、性能测试、负载测试

6.1 集成测试

6.1.1 Selenium

6.1.2 CasperJS

6.2 性能测试

6.2.1 生成HAR文件

6.2.2 查看HAR文件

6.2.3 浏览器性能测试

6.3 负载测试

浏览器负载测试

6.4 跟踪资源利用率

6.4.1 客户端跟踪

6.4.2 服务器端跟踪

6.5 小结

第7章 调试

7.1 浏览器内调试

7.1.1 Firefox

7.1.2 Chrome

7.1.3 Safari

7.1.4 Internet Explorer

7.2 Node.js调试

7.3 远程调试

7.3.1 Chrome

7.3.2 PhantomJS

7.3.3 Firefox

7.4 移动调试

7.4.1 Android 4

7.4.2 iOS 6

7.4.3 Adobe Edge Inspect

7.4.4 其他方面的移动调试选择

7.5 生产环境调试

7.5.1 最小化代码

7.5.2 源映像

7.6 小结

第8章 自动化

8.1 自动化什么内容

8.2 何时进行自动化

8.3 如何进行自动化

8.3.1 含有持续集成的自动化

8.3.2 开发环境自动化

8.3.3 构建环境自动化

8.3.4 部署

8.4 小结

累计评论(3条) 2个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部