-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Web接口開發與自動化測試——基于Python語言

( 簡體 字)
作者:蟲師類別:1. -> 程式設計 -> Python
譯者:
出版社:電子工業出版社Web接口開發與自動化測試——基于Python語言 3dWoo書號: 46445
詢問書籍請說出此書號!

缺書
NT售價: 295

出版日:3/1/2017
頁數:288
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121310997
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

前 言
本書的原型是我整理的一份Django 學習文檔。在從事軟件測試工作的這六七年里,我
一直有整理學習資料的習慣,這種學習理解再輸出的方式對我非常受用,博客和文檔是我
主要的輸出形式,這些輸出同時也幫助到許多軟件測試人員。
說回到接口測試的話題上來,根據分層自動化測試的思想,上層為UI 層。關于UI 層
的自動化測試我們已經很熟悉了,許多技術和工具都是圍繞這一層來設計的,我們要想做
自動化,首先想到和嘗試去做的也是這一層的自動化實現。底層為單元測試,對于單元級
別的自動化測試來說,雖然大多數測試人員并沒有真正做過,但我們知道,它一般使用單
元測試框架,通過一段代碼去測試另一段代碼;而接口測試剛好處于中間層,不太好理解,
也不太好解釋,因為在開發的項目中只有程序目錄/文件、類、方法、函數這些,并沒有一
個叫作“接口”的東西。但是,它卻又無處不在,是一個出現頻率極高的詞,時刻掛在開
發人員的嘴邊。
什么是接口?如何對接口進行測試呢?我曾經也有很長一段時間并不太理解什么是接
口測試。為什么沒有一本講接口測試的書呢?性能測試和UI 自動化測試的書籍每年都會出
版好幾本,與之相比,幾乎找不到一本專門介紹接口測試的書。現在想來可能是因為它太
簡單了吧!簡單到沒什么可講的,甚至接口測試比功能測試還要簡單得多。但是,真的做
好接口測試又很難,或者說難點并不在于接口測試本身,而是需要有讀懂接口代碼處理邏
輯的能力,這就要求你必須具備一定的開發基礎,因而對許多測試人員來說,已經形成了
門檻。
要寫一本關于接口測試的書,一種討巧的做法就是把目前主流的接口測試工具都介紹
一遍,這很符合主題。然而,我并不認為把這些工具都學好就可以做好接口測試。舉一個
簡單的例子,我的接口使用了加密,例如,用時間戳+密鑰生成AES 加密字符串,再將字
符串生成base64 字符串作為接口參數傳輸,這其實是一種常見的加密策略,而我所了解的
IV ∣ Web 接口開發與自動化測試——基于Python 語言
大多數接口測試工具都無法做到對這種加密接口的測試。原因很簡單,加密算法和加密策
略多種多樣,而工具卻很難模擬這種多樣性的加密策略。但是,站在開發的角度上看,接
口測試就很簡單了,開發怎么調用,測試就怎么調用唄!只不過測試的目的是驗證在傳各
種參數的情況下,接口是否可以正確地處理并返回結果。
所以,我選擇另一種需要很高學習成本的方法來講解接口測試,從Web 接口開發講起,
理解了接口是如何開發的,再做接口測試自然就變得非常簡單了。你會看到本書前幾章都
是在講Web 開發以及Web 接口開發,你可能會懷疑自己是不是買錯書了,明明是要學習接
口測試的,怎么介紹的都是開發的技術。其實,如果你只是想學習Web 開發的話,那么本
書也是一本不錯的入門教程。
本書共分為15 個章節,涵蓋了不少話題,這也是我在寫作時對自己的要求,不要講解
太基礎的東西,不要講太多無聊的概念,要有很強的可操作性。第1 章是Python 基礎,第
2~5 章是Web 開發,第6 章是單元測試,第7~10 章主要講接口的概念、開發與測試,第
11 章介紹安全接口的開發與測試,第12~13 章講Web Service 技術,第14~15 章介紹項目
的部署與性能測試。所以,這并不是一本單純面向測試人員的書,同樣適合開發的小伙伴
閱讀。
到了感謝部分,首先,感謝身邊的同事,一年多的接口自動化測試實踐過程中,我收
獲了很多,感謝測試經理唐亮對我們在嘗試新技術時的支持,感謝開發組的藍仕坤、陳曉
發在技術上給了我很大的幫助。其次,感謝接口自動化測試群里的小伙伴,他們給本書提
了很多建議,包括本書的名字,也是在群里投票的結果。再次,感謝我的妻子,她默默地
容忍著我每天晚睡的壞習慣,感謝她一直以來的包容與理解。最后,感謝編輯安娜,沒有
她這本書也不會出版,我們合作一直很愉快。
由于作者水平有限,希望你帶著懷疑的精神閱讀本書,如果發現錯誤,歡迎批評指正。
2017 年1 月13 號凌晨
蟲師
內容簡介:

本書以接口測試為主線,以Web開發為切入點,全面介紹了Web接口開發與自動化測試過程中使用的相關技術。全書分為15章,第1章介紹了Python的基礎知識,解答初學Python的同學都會遇到的一些問題;第2章到第5章以開發發布會簽到系統為需求,介紹了Django Web開發技術;第6章介紹了unittest單元測試框架,以及在Django中如何編寫單元測試;第7章到第10章主要介紹接口的相關概念、Web接口開發、接口測試工具和接口自動化測試框架的開發;第11介紹了安全接口的開發與測試;第12章和第13章介紹了Web Services技術;第14章和第15章介紹了Django Web項目的部署和接口性能測試。

目錄:

第1 章 Python 學習必知 ............ 1
1.1 Python 2.x 與Python 3.x 選擇 ......... 1
1.2 Python 的安裝 ............ 2
1.2.1 在Windows 下安裝Python ......... 2
1.2.2 安裝Python 2 和Python 3 兩個版本 ........ 3
1.2.3 “python”不是內部或外部命令 ....... 5
1.3 擴展庫的安裝 ............ 6
1.3.1 pip 安裝擴展庫 .......... 6
1.3.2 tar.gz 文件安裝 .......... 9
1.3.3 .whl 文件安裝 ............ 9
1.3.4 GitHub 克隆項目安裝 ......... 9
1.4 開發工具選擇 ............ 11
1.4.1 Sublime Text3 ........... 11
1.4.2 Atom ............. 13
1.4.3 PyCharm ........... 14
1.5 程序報錯不要慌 ............ 15
1.5.1 縮進錯誤 ............ 15
1.5.2 引包錯誤 ............ 16
1.5.3 編碼錯誤 ............ 16
1.5.4 學會分析錯誤 .......... 17
第2 章 Django 入門 ............. 19
2.1 Django 開發環境 ............ 19
2.1.1 在Windows 下安裝Django ........ 20
VI ∣ Web 接口開發與自動化測試——基于Python 語言
2.1.2 在Ubuntu 下安裝Django........ 20
2.2 開始第一個demo ............ 21
2.2.1 創建項目與應用 .......... 22
2.2.2 運行項目 ............ 25
2.2.3 Hello Django! ........... 27
2.2.4 使用模板 ............ 29
2.3 Django 工作流 ............ 30
2.3.1 URL 組成 ........... 31
2.3.2 URLconf ........... 32
2.3.3 views 視圖 ............ 33
2.3.4 templates 模板 .......... 34
2.4 MTV 開發模式 ............ 34
第3 章 Django 視圖 ............. 36
3.1 來寫個登錄功能 ............ 36
3.1.1 GET 與POST 請求 .......... 37
3.1.2 處理登錄請求 .......... 40
3.1.3 登錄成功頁 ............ 42
3.2 Cookie 和Session ........... 44
3.2.1 Cookie 的使用 .......... 44
3.2.2 Session 的使用 ........... 46
3.3 Django 認證系統 ............ 49
3.3.1 登錄Admin 后臺 ........... 49
3.3.2 引用Django 認證登錄 .......... 50
3.3.3 關上窗戶 ............ 51
第4 章 Django 模型 ............. 53
4.1 設計系統表 ............ 53
4.2 admin 后臺管理 ........... 56
4.3 基本數據訪問 ............ 59
4.3.1 插入數據 ............ 60
4.3.2 查詢數據 ............ 61
目 錄∣ VII
4.3.3 刪除數據 ............ 63
4.3.4 更新數據 ............ 63
4.4 SQLite 管理工具 ............ 64
4.4.1 SQLite Manager ........... 64
4.4.2 SQLiteStudio ............ 65
4.5 配置MySQL ............ 65
4.5.1 安裝MySQL ............ 65
4.5.2 MySQL 基本操作 .......... 67
4.5.3 安裝PyMySQL .......... 68
4.5.4 在Django 中配置MySQL ........ 69
4.5.5 MySQL 管理工具 .......... 72
第5 章 Django 模板 ............. 73
5.1 Django-bootstrap3 ............ 73
5.2 發布會管理 ............ 74
5.2.1 發布會列表 ............ 74
5.2.2 搜索功能 ............ 78
5.3 嘉賓管理 .............. 79
5.3.1 嘉賓列表 ............ 80
5.3.2 分頁器 ............ 83
5.4 簽到功能 .............. 87
5.4.1 添加簽到鏈接 .......... 87
5.4.2 簽到頁面 ............ 88
5.4.3 簽到動作 ............ 91
5.5 退出系統 .............. 93
第6 章 Django 測試 ............. 95
6.1 unittest 單元測試框架 .......... 95
6.1.1 單元測試框架 .......... 95
6.1.2 編寫單元測試用例 .......... 96
6.2 Django 測試............ 100
6.2.1 一個簡單的例子 .......... 100
VIII ∣ Web 接口開發與自動化測試——基于Python 語言
6.2.2 運行測試用例 .......... 102
6.3 客戶端測試 ............ 104
6.3.1 測試首頁 ............ 104
6.3.2 測試登錄動作 .......... 105
6.3.3 測試發布會管理 .......... 107
6.3.4 測試嘉賓管理 .......... 108
6.3.5 測試用戶簽到 .......... 109
第7 章 接口相關概念 ............. 111
7.1 分層的自動化測試 ............ 111
7.2 單元測試與模塊測試 .......... 112
7.3 接口測試 ............ 114
7.3.1 接口的分類 ............ 115
7.3.2 接口測試的意義 .......... 116
7.4 編程語言中的Interface ........... 117
7.4.1 Java 中的Interface ......... 117
7.4.2 Python 中的Zope.interface ........ 119
第8 章 開發Web 接口 ............. 121
8.1 為何要開發Web 接口 ........... 121
8.2 什么是Web 接口 ........... 124
8.2.1 HTTP ............ 125
8.2.2 JSON 格式 ............ 128
8.3 開發系統Web 接口 ........... 129
8.3.1 配置接口路徑 .......... 129
8.3.2 添加發布會接口 .......... 130
8.3.3 查詢發布會接口 .......... 132
8.3.4 添加嘉賓接口 .......... 133
8.3.5 查詢嘉賓接口 .......... 135
8.3.6 發布會簽到接口 .......... 136
8.4 編寫Web 接口文檔 ........... 138
目 錄∣ IX
第9 章 接口測試工具介紹 ............. 143
9.1 Postman 測試工具 ............ 143
9.2 JMeter 測試工具 ............ 146
9.2.1 安裝JMeter ............ 146
9.2.2 創建測試任務 .......... 147
9.2.3 添加接口測試 .......... 151
9.2.4 添加斷言 ............ 153
9.3 Robot Framework 測試框架 .......... 154
9.3.1 環境搭建 ............ 155
9.3.2 基本概念與用法 .......... 157
9.3.3 接口測試 ............ 160
第10 章 接口自動化測試框架 ........... 165
10.1 接口測試工具的不足 .......... 165
10.2 Requests 庫 ............. 166
10.2.1 安裝 ............ 167
10.2.2 接口測試 ............ 167
10.2.3 集成unittest ........... 168
10.3 接口測試框架開發 .......... 169
10.3.1 框架處理流程 .......... 169
10.3.2 框架結構介紹 .......... 170
10.3.3 修改數據庫配置 .......... 171
10.3.4 數據庫操作封裝 .......... 172
10.3.5 編寫接口測試用例 .......... 176
10.3.6 集成測試報告 .......... 178
第11 章 接口的安全機制 ............. 181
11.1 用戶認證 ............ 181
11.1.1 開發帶Auth 接口 .......... 182
11.1.2 接口文檔 ............ 184
11.1.3 接口測試用例 .......... 185
X ∣ Web 接口開發與自動化測試——基于Python 語言
11.2 數字簽名 ............ 187
11.2.1 開發接口 ............ 188
11.2.2 接口文檔 ............ 191
11.2.3 接口用例 ............ 192
11.3 接口加密 ............ 194
11.3.1 PyCrypto 庫 .......... 194
11.3.2 AES 加密接口開發 .......... 196
11.3.3 編寫接口文檔 .......... 201
11.3.4 補充接口測試用例 .......... 202
第12 章 Web Services ............ 205
12.1 Web Services 相關概念 .......... 205
12.2 Web Services 的開發與調用 .......... 214
12.2.1 suds-jurko 調用接口 .......... 214
12.2.2 spyne 開發接口 .......... 219
12.3 JMeter 測試SOAP 接口 .......... 221
第13 章 REST .............. 224
13.1 RPC 與REST ........... 224
13.2 Django REST Framework......... 227
13.2.1 創建簡單的API ........... 227
13.2.2 添加接口數據 .......... 231
13.2.3 測試接口 ............ 232
13.3 集成發布會系統API ........... 234
13.3.1 添加發布會API ........... 234
13.3.2 測試接口 ............ 237
13.4 soapUI 測試工具 ............ 238
13.4.1 創建SOAP 測試項目 .......... 239
13.4.2 創建REST 測試項目 .......... 241
目 錄∣ XI
第14 章 Django 項目部署 ............. 244
14.1 uWSGI .............. 244
14.1.1 uWSGI 介紹 ........... 244
14.1.2 安裝uWSGI ........... 245
14.1.3 uWSGI 運行Django .......... 246
14.2 Nginx .............. 247
14.2.1 安裝Nginx ........... 247
14.2.2 Nginx+uWSGI+Django ........ 248
14.2.3 處理靜態資源 .......... 251
14.3 創建404 頁面 ............ 253
第15 章 接口性能測試 ............. 256
15.1 Locust 性能測試工具........... 256
15.1.1 安裝Locust .......... 257
15.1.2 性能測試案例 .......... 259
15.2 發布會系統性能測試 .......... 262
15.2.1 性能測試準備 .......... 263
15.2.2 編寫性能測試腳本 .......... 266
15.2.3 執行性能測試 .......... 267
15.3 接口性能測試 ............ 270
15.3.1 編寫接口性能測試腳本 ........ 270
15.3.2 執行接口性能測試 .......... 271
15.3.3 多線程測試接口性能 .......... 274
序: