《PythonWeb开发:测试驱动方法》【PDF】

标签:
python推荐书单pythonweb开发测试驱动方法电子书 |
分类: Python推荐书单 |

内容简介
本书从最基础的知识开始,讲解Web开发的整个流程,展示如何使用Python做测试驱动开发。本书由三个部分组成。第一部分介绍了测试驱动开发和Django的基础知识。第二部分讨论了Web开发要素,探讨了Web开发过程中不可避免的问题,及如何通过测试解决这些问题。第三部分探讨了一些高级话题,如模拟技术、集成第三方插件、Ajax、测试固件、持续集成等。本书适合Web开发人员阅读。
作者简介
Harry J.W. Percival
目前就职于PythonAnywhere LLP公司,他在各种演讲、研讨会和开发者大会上积极推广TDD。他在利物浦大学获得计算机科学硕士学位,在剑桥大学获得哲学硕士学位。
目录
前言 xv
准备工作和应具备的知识 xxi
致谢 xxvii
第一部分 TDD
和Django
基础
第1章 使用功能测试协助安装Django 3
1.1 遵从测试山羊的教诲,没有测试什么也别做 3
1.2 让Django运行起来 6
1.3 创建Git仓库 7
第2章 使用unittest模块扩展功能测试 11
2.1 使用功能测试驱动开发一个最简可用的应用 11
2.2 Python标准库中的unittest模块 14
2.3 隐式等待 16
2.4 提交 16
第3章 使用单元测试测试简单的首页 18
3.1 第一个Django应用,第一个单元测试 19
3.2 单元测试及其与功能测试的区别 19
3.3 Django中的单元测试 20
3.4 Django中的MVC、URL
和视图函数 21
3.5 终于可以编写一些应用代码了 22
3.6 urls.py 24
3.7 为视图编写单元测试 27
第4章 编写这些测试有什么用 31
4.1 编程就像从井里打水 31
4.2 使用Selenium测试用户交互 33
4.3 遵守“不测试常量”规则,使用模板解决这个问题 35
4.4 关于重构 39
4.5 接着修改首页 40
4.6 总结:TDD流程 42
第5章 保存用户输入 45
5.1 编写表单,发送POST请求 45
5.2 在服务器中处理POST请求 48
5.3 把Python变量传入模板中渲染 49
5.4 事不过三,三则重构 53
5.5 Django
ORM和第一个模型 54
5.5.1 第一个数据库迁移 56
5.5.2 测试向前走得挺远 57
5.5.3 添加新字段就要创建新迁移 57
5.6 把POST请求中的数据存入数据库 58
5.7 处理完POST请求后重定向 61
5.8 在模板中渲染待办事项 63
5.9 使用迁移创建生产数据库 65
第6章 完成最简可用的网站 70
6.1 确保功能测试之间相互隔离 70
6.2 必要时做少量的设计 74
6.2.1 YAGNI 74
6.2.2 REST 75
6.3 使用TDD
实现新设计 76
6.4 逐步迭代,实现新设计 78
6.5 使用Django测试客户端一起测试视图、模板和URL 80
6.5.1 一个新测试类 80
6.5.2 一个新URL 81
6.5.3 一个新视图函数 81
6.5.4 一个新模板,用于查看清单 82
6.6 用于添加待办事项的URL和视图 85
6.6.1 用来测试新建清单的测试类 85
6.6.2 用于新建清单的URL和视图 86
6.6.3 删除当前多余的代码和测试 88
6.6.4 让表单指向刚添加的新URL 88
6.7 调整模型 89
6.7.1 通过外键实现的关联 91
6.7.2 根据新模型定义调整其他代码 92
6.8 每个列表都应该有自己的URL 94
6.8.1 捕获URL中的参数 95
6.8.2 按照新设计调整new_list视图 96
6.9 还需要一个视图,把待办事项加入现有清单 97
6.9.1 小心霸道的正则表达式 98
6.9.2 最后一个新URL 98
6.9.3 最后一个新视图 99
6.9.4 如何在表单中使用那个URL 100
6.10 使用URL
引入做最后一次重构 102
第二部分 Web开发要素
第7章 美化网站:布局、样式及其测试方法 106
7.1 如何在功能测试中测试布局和样式 106
7.2 使用CSS框架美化网站 109
7.3 Django模板继承 111
7.4 集成Bootstrap 112
7.5 Django中的静态文件 114
7.6 使用Bootstrap中的组件改进网站外观 116
7.6.1 超大文本块 116
7.6.2 大型输入框 116
7.6.3 样式化表格 117
7.7 使用自己编写的CSS 117
7.8 补遗:collectstatic命令和其他静态目录 118
7.9 没谈到的话题 121
第8章 使用过渡网站测试部署 122
8.1 TDD以及部署的危险区域 123
8.2 一如既往,先写测试 124
8.3 注册域名 126
8.4 手动配置托管网站的服务器 126
8.4.1 选择在哪里托管网站 127
8.4.2 搭建服务器 127
8.4.3 用户账户、SSH和权限 128
8.4.4 安装Nginx 128
8.4.5 解析过渡环境和线上环境所用的域名 129
8.4.6 使用功能测试确认域名可用而且Nginx正在运行 130
8.5 手动部署代码 130
8.5.1 调整数据库的位置 131
8.5.2 创建虚拟环境 133
8.5.3 简单配置Nginx 135
8.5.4 使用迁移创建数据库 137
8.6 为部署到生产环境做好准备 138
8.6.1 换用Gunicorn 138
8.6.2 让Nginx伺服静态文件 139
8.6.3 换用Unix套接字 140
8.6.4 把DEBUG设为False,设置ALLOWED_HOSTS 141
8.6.5 使用Upstart确保引导时启动Gunicorn 141
8.6.6 保存改动:把Gunicorn
添加到requirements.txt 142
8.7 自动化 143
...
下载地址:https://cangshuzhe.ctfile.com/fs/3990681-234765121