图灵程序设计丛书

Python Web开发:测试驱动方法

Harry J.W. Percival (作者) 安道 (译者)
通过阅读本书,你将:

深入分析TDD流程,包括“单元测试/编写代码”循环和重构;
使用单元测试检查类和函数,使用功能测试检查浏览器中的用户交互;
学习何时以及如何使用模拟对象,以及隔离测试和整合测试的优缺点;
在过渡服务器中测试和自动部署;
测试网站中集成的第三方插件;
使用持续集成环境自动运行测试。

“这本书很棒、很有趣,所讲的全都是重点知识。如果有人想用Python做测试、学习Django或者想使用Selenium,我极力推荐这本书。要使开发者保持头脑清醒,测试可谓至关重要。Harry完成了一项不可思议的工作,他不仅吸引了我们对测试的关注,而且还探索了切实可行的测试实践方案。”——Michael Foord,Python核心开发者,unittest维护者

“这本书远不只是介绍了测试驱动开发,它还是一套完整的最佳实践速成课程,从头到尾介绍了如何使用Python开发现代Web应用。每个Web开发者都应该阅读这本书。”——Kenneth Reitz,Python软件基金会特别会员

“我们学习Django时,真希望有Harry的这本书。这本书内容紧凑,环环相扣,却又令人愉悦,精彩地介绍了Django和各种测试实践。”——Daniel Greenfeld和Audrey Roy,Two Scoops of Django的作者

<作者答读者疑问>

问:读者为什么要买《Python Web开发:测试驱动方法》?

答:讲解测试的书很多,有些十分抽象,有些示例过于简单。而我想写一本更注重实践的书,这可能跟我学习TDD的方式有关——与使用TDD开发理念多年的人结对编程。所以,在这本书中我假设自己与读者坐在一起,合力开发一个真实的Web应用,共同解决具体的问题。在这个过程中,我会说明如何使用TDD理念开发应用,还会解说使用各种测试实践方法的原因。而且,整个过程都在测试山羊的监督之下进行。

问:这本书只讲测试吗?

答:是,也不是。本书涵盖大量与测试核心概念有关的周边话题,例如使用Git做版本控制、自动部署服务器、JavaScript和集成第三方API。这些都是日常Web开发中会用到的真实工具,而且使用起来有些麻烦,所以我说明了如何把这些操作集成到渐进可重复的测试驱动开发流程中。

问:这本书最适合哪些读者阅读?

答:可以说,这本书是写给四年前的我自己的,因为本书凝聚了我过去四年所学的全部知识。我认为本书对刚接触Python开发不久的读者特别有用。这类读者已经开发了几个小型Web项目,遇到了诸多麻烦,因此想学习一些软件开发方面的最佳实践。不过,我写本书时尽量让学习曲线保持平缓,所以如果没有经验的新手愿意不时地放下本书,去阅读其他资料(例如Django教程),本书也适合这类读者阅读。如果使用其他语言做过Web开发,想知道如何使用Python开发Web项目,也能从本书中受益。

收藏本书能做什么?

有情况的时候会收到通知,比如电子书发布等。

电子书
¥49.99
格式
mobi   pdf

纸质书
¥89.10 ¥99.00

出版信息

  • 书  名Python Web开发:测试驱动方法
  • 系列书名图灵程序设计丛书
  • 执行编辑关于本书的内容有任何问题,请联系 岳新欣
  • 出版日期2015-10-10
  • 书  号978-7-115-40327-8
  • 定  价99.00 元
  • 页  数444
  • 印刷方式黑白
  • 开  本16开
  • 出版状态上市销售
  • 原书名Test-Driven Development with Python
  • 原书号978-1449364823

所属分类

同系列书

  • HTTP权威指南

    David Gourley   Brian Totty   Marjorie Sayer   Sailu Reddy   Anshu Aggarwal   陈涓   赵振平   译

    本书是HTTP及其相关核心Web技术方面的权威著作,主要介绍了Web应用程序是如何工作的,核心的因特网协议如何...

  • JavaScript高级程序设计(第3版)

    Nicholas C.Zakas   李松峰   曹力   译

    本书是JavaScript超级畅销书的最新版。ECMAScript 5 和HTML5在标准之争中双双胜出,使大...

  • 计算机科学的基础

    Al Aho   Jeff Ullman   傅尔也   译

    本书全面而详细地阐述了计算机科学的理论基础,从抽象概念的机械化到各种数据模型的建立,用算法、数据抽象等核心思想...

  • Java技术手册(第6版)

    Benjamin J Evans   David Flanagan   安道   译

    通过学习本书,你将能够: 掌握最新的语言细节,包括Java 8的变化 使用基本的Java句法学习面向对...

  • 机器学习实战

    Peter Harrington   李锐   李鹏   曲亚东   王斌   译

    机器学习是人工智能研究领域中一个极其重要的研究方向,在现今的大数据时代背景下,捕获数据并从中萃取有价值的信息或...

本书特色

本书手把手教你从头开始开发一个真正的Web应用,并且展示使用Python做测试驱动开发(TDD)的优势。你将学到如何在开发应用的每一个部分之前先编写和运行测试,然后再编写最少量的代码让测试通过。也就是说,你将学会应用TDD理念,写出简洁可用、赏心悦目的代码。

在这个过程中,你还将学到Django、Selenium、Git、jQuery和Mock的基础知识,以及其他当前流行的Web开发技术。如果你准备提升自己的Python技能,本书将清楚地演示如何使用TDD实现简单的设计。

目录

版权声明 阅读
O'Reilly Media, Inc.介绍 阅读
前言 阅读
准备工作和应具备的知识 阅读
致谢 阅读
第一部分 TDD 和 Django 基础 阅读
第 1 章 使用功能测试协助安装 Django 阅读
第 2 章 使用 unittest 模块扩展功能测试 阅读
第 3 章 使用单元测试测试简单的首页
第 4 章 编写这些测试有什么用
第 5 章 保存用户输入
第 6 章 完成最简可用的网站
第二部分 Web 开发要素
第 7 章 美化网站:布局、样式及其测试方法
第 8 章 使用过渡网站测试部署
第 9 章 使用 Fabric 自动部署
第 10 章 输入验证和测试的组织方式
第 11 章 简单的表单
第 12 章 高级表单
第 13 章 试探 JavaScript
第 14 章 部署新代码
第三部分 高级话题
第 15 章 用户认证、集成第三方插件以及 JavaScript 模拟技术的使用
第 16 章 服务器端认证,在 Python 中使用模拟技术
第 17 章 测试固件、日志和服务器端调试
第 18 章 完成“My Lists”页面:由外而内的 TDD
第 19 章 测试隔离和“倾听测试的心声”
第 20 章 持续集成
第 21 章 简单的社会化功能、页面模式,以及练习
第 22 章 测试运行速度的快慢和炽热的岩浆
遵从测试山羊的教诲
附录 A PythonAnywhere
附录 B 基于类的 Django 视图
附录 C 使用 Ansible 配置服务器
附录 D 测试数据库迁移
附录 E 接下来做什么
附录 F 速查表
附录 G 参考书目
作者简介
封面介绍

作者介绍

<作者介绍>
Harry J.W. Percival目前就职于PythonAnywhere LLP公司,他在各种演讲、研讨会和开发者大会上积极推广TDD。他在利物浦大学获得计算机科学硕士学位,在剑桥大学获得哲学硕士学位。

大家也喜欢

  • Python机器学习经典实例

    Prateek Joshi   陶俊杰   陈小莉   译

    在如今这个处处以数据驱动的世界中,机器学习正变得越来越大众化。它已经被广泛地应用于不同领域,如搜索引擎、机器人...

  • 流畅的Python

    [巴西] Luciano Ramalho   安道   吴珂   译

    【主要内容】 本书致力于帮助Python开发人员挖掘这门语言及相关程序库的优秀特性,避免重复劳动,同时写...

  • Python项目开发实战(第2版)

    BePROUD股份有限公司   支鹏浩   译

    本书来自真正的开发现场,是BePROUD公司众多极客在真实项目中的经验总结和智慧结晶。作者从Python的环境...

  • Python科学计算基础教程

    Hemant Kumar Mehta   陶俊杰 陈小莉   译

    Python因为其自身的诸多优点而成为科学计算的极佳选择。本书是将Python用于科学计算的实用指南,既介绍了...

  • Python网络编程(第3版)

    [美]Brandon Rhodes   [美]John Goerzen   诸豪文   译

    本书针对想要深入理解使用Python来解决网络相关问题或是构建网络应用程序的技术人员,结合实例讲解了网络协议、...

相关文章

  • 求助:第5章中,home.html中加入{% csrf_token %}后,test.py中self.assertEqual(response.content.decode(), expected_html)这个测试就不能通过了。
    需要怎样处理?(django1.9.2)
    有来YouGo  发表于 2016-02-24 17:18:43
    • django 1.8版本以上可以使用
      expected_html = render_to_string('list/home.html', {'new_item_text': ''},
      request=request)
      解决render_to_string忽略{% csrf_token %}的问题

      cenphoenix  发表于 2016-02-27 15:23:54
    • 谢谢,问题解决

      有来YouGo  发表于 2016-02-27 15:36:01
    • 我也碰到这问题了,查了好久没找到解决方法,想着这里应该也有人碰到过吧,没想到还真有,多谢多谢。话说这到底是什么坑?

      ylzh156  发表于 2016-07-29 22:21:28
  • 哇,图灵速度好快啊,这么快这本书也分配了,真想也出版一本自己翻译的书啊……
    Florije  发表于 2014-09-12 16:28:27
    • 好奇的是为什么不是测试驱动开发……哪里出来一个Web?

      Florije  发表于 2014-09-12 16:30:13
  • 这书应该不错!有电子版么?
    simonclickk  发表于 2015-09-08 11:48:01
    • 有的,敬请期待,下个月应该就会出电子版了。

      岳新欣  发表于 2015-09-08 13:02:55
    • 期待电子版啊~~十月都快要结束了呢

      jasonz  发表于 2015-10-29 14:10:22
  • Seven More Languages in Seven Weeks这书有引进计划么?书名够难翻译的,《七周七语言第二季》吧
    simonclickk  发表于 2015-09-10 10:01:30
    • 这个可以有

      姜鹏  发表于 2015-10-11 21:09:41
    • 据说该书已经有非图灵公司拿到中文版权。

      simonclickk  发表于 2015-10-12 10:17:10
  • 今天刚拿到纸质版,话说什么时候上电子版啊?
    夏望  发表于 2015-10-29 14:37:12
    • 你晚点买纸书才对,等有了电子版,买纸书,电子版2折。现在有么?

      simonclickk  发表于 2015-10-29 16:05:39
    • 擦擦擦,不管了。就当是早买早享受吧……

      夏望  发表于 2015-10-31 00:21:58
    • 让IT改系统吧。电子版出来后,应该给图灵买了该书纸板书的人发短信带上电子书优惠码。现在的系统,电子版滞后半年,这个可以理解。但是在纸版书出来、电子版没出来,这时买纸版书的人,反而没有电子书优惠码。而那些等上半年,买纸版书的人,反而有电子书优惠码。这个不公平。

      simonclickk  发表于 2016-02-02 12:00:10
    • 说得好,这个体验真心糟糕,需要改进!

      夏望  发表于 2016-02-17 00:46:49
  • 书名没弄错吧,《高质量Python Web开发》?这书名字很明显是《测试驱动Python开发》。
    正在找python的测试驱动开发书籍,居然就在图灵这里,强烈要求参与评审!
    可不要像《Test-Driven Development by Example》一样,被机械工业出版社找人重新翻译了一遍,中文总算能看懂了,可惜那个代码错误多得呀。。。有空我贴一版勘误出来 。
    旁观者  发表于 2015-02-12 16:14:22
  • 电子版呢?
    XiaoKuiKui  发表于 2015-10-21 16:31:46
  • 等电子版,等啊等,花儿都快谢了
    lcmust  发表于 2015-10-22 11:02:42
  • 10月都要结束了,电子版呢?
    aytrack  发表于 2015-10-29 13:59:11
  • 大婶们,这是测试的书籍么,自动化测试?
    赵明威  发表于 2015-11-10 10:11:50
  • 买了电子书无法下载啊?下载下来是个44M的exe……
    specter21  发表于 2016-06-21 07:29:44
  • 求助:在第8章126页中,我执行功能测试的时候,会报错 AttributeError: type object 'NewVisitorTest' has no attribute 'server_thread' ,与书中的报错不一致。请问这个该怎么解决呢?求大神赐教。。。。。
    jh901011  发表于 2017-05-29 16:09:33
  • 代码错误太多。作者自己都缩要让我们自己解决。。。有点日🐶了。
    hiluluke  发表于 2017-07-27 22:24:19
合作: 澳门网上赌博 葡京棋牌 新葡京娱乐场