注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)Cucumber行為驅(qū)動開發(fā)指南

Cucumber行為驅(qū)動開發(fā)指南

Cucumber行為驅(qū)動開發(fā)指南

定 價:¥59.00

作 者: (英)Matt Wynne (挪)Aslak Helles?y 著
出版社: 人民郵電出版社
叢編項:
標(biāo) 簽: 計算機與互聯(lián)網(wǎng) 軟件工程及軟件方法學(xué)

ISBN: 9787115318855 出版時間: 2013-07-01 包裝: 平裝
開本: 16開 頁數(shù): 272 字?jǐn)?shù):  

內(nèi)容簡介

  《Cucumber:行為驅(qū)動開發(fā)指南》的兩位作者是Matt Wynne和Aslak Helles?y,前者是Cucumber最有經(jīng)驗的用戶和貢獻(xiàn)者之一,后者是Cucumber的創(chuàng)始人,因此,《Cucumber:行為驅(qū)動開發(fā)指南》是一本權(quán)威指南,它會提供使用Cucumber所需的全部知識,讓你和你的團(tuán)隊自信地開啟Cucumber之旅。盡管Cucumber誕生于Ruby社區(qū),但你可以用它測試幾乎所有系統(tǒng),從簡單的shell或Perl腳本,到使用PHP、Java或任何其他平臺編寫的Web應(yīng)用。書中將展示如何用一組清晰、可執(zhí)行且團(tuán)隊中任何人都能讀懂的規(guī)格說明來表達(dá)用戶那些天馬行空的想法。你將學(xué)會如何將這些示例提供給Cucumber,并讓它指導(dǎo)你的開發(fā)過程。《Cucumber:行為驅(qū)動開發(fā)指南》的第一部分會提供Cucumber入門所需的全部知識,引導(dǎo)你從Cucumber的核心特性起步,通過Cucumber的Gherkin DSL,使用自然語言來描述客戶想要的系統(tǒng)行為,然后帶你編寫Ruby代碼來解釋這些自然語言描述的規(guī)格說明并據(jù)此來驗證應(yīng)用的行為。第二部分將通過一個可以工作的例子來鞏固學(xué)到的知識,同時學(xué)習(xí)一些更高級的Cucumber技術(shù),還將學(xué)習(xí)如何測試異步系統(tǒng)和使用數(shù)據(jù)庫的系統(tǒng)。第三部分提供了一些解決問題的方法,針對的都是作者曾幫助其他團(tuán)隊解決過的最困難、最常見的問題?;谶@些模式和技術(shù),你將學(xué)習(xí)如何使用Capybara和Selenium測試大量使用Ajax的Web應(yīng)用,測試REST Web服務(wù)、Ruby on Rails應(yīng)用、命令行應(yīng)用、遺留程序等。Cucumber有助于在軟件團(tuán)隊中的技術(shù)人員和非技術(shù)人員之間架起溝通的橋梁?!禖ucumber:行為驅(qū)動開發(fā)指南》的內(nèi)容既適合開發(fā)人員和測試人員閱讀,也適合軟件團(tuán)隊中的非技術(shù)讀者閱讀。

作者簡介

  作者介紹Matt Wynne獨立咨詢顧問,他幫助各種各樣的團(tuán)隊學(xué)習(xí)如何盡其所能交付軟件,并同時享受這一過程。業(yè)余時間他是Cucumber項目的核心開發(fā)者,Matt的博客是mattwynne.net,推特是@mattwynne。Aslak Helles?yCucumber項目的創(chuàng)始人,倫敦DRW交易集團(tuán)(DRW Trading Group)倫敦公司的一名高級開發(fā)工程師,他使用多種不同的語言編寫快速、智能的軟件。在此之前,他是挪威BEKK咨詢公司的首席科學(xué)家。Aslak的推特是@aslak_hellesoy。譯者介紹許曉斌程序員,敏捷教練,技術(shù)作者,持續(xù)集成方面的專家。曾任職于Sonatype,是開源軟件Nexus的核心團(tuán)隊成員,Maven中央倉庫的主要維護(hù)者。著有《Maven實戰(zhàn)》,譯有《Maven權(quán)威指南》,有不少文章發(fā)表于InfoQ、《程序員》等技術(shù)雜志,活躍于敏捷社區(qū)并在Agile Tour等ScrumGathering等會議上發(fā)表過演講。新浪微博@juvenxu,博客http

圖書目錄

第一部分 Cucumber基礎(chǔ)
第1章 為何使用Cucumber
1.1 自動化驗收測試
1.2 行為驅(qū)動開發(fā)
1.2.1 通用語言
1.2.2 實例
1.3 活的文檔
事實來源
1.4 Cucumber如何工作
1.5 我們學(xué)到了什么
第2章 Cucumber初體驗
2.1 理解我們的目標(biāo)
2.2 創(chuàng)建一個特性
2.3 創(chuàng)建步驟定義
2.4 實現(xiàn)第一個步驟定義
2.5 運行程序
2.6 改變格式器
2.7 添加一個斷言
2.8 讓測試通過
2.9 我們學(xué)到了什么
2.9.1 目錄結(jié)構(gòu)
2.9.2 小步前進(jìn)
2.9.3 Gherkin
2.9.4 步驟定義
第3章 Gherkin基礎(chǔ)
3.1 Gherkins是干什么的
3.1.1 具體實例
3.1.2 可執(zhí)行的規(guī)格說明
3.2 格式和語法
3.2.1 關(guān)鍵字
3.2.2 模擬運行
3.3 Feature
3.4 場景
3.4.1 Given、When和Then
3.4.2 And和But
3.4.3 使用星號替換Given、When和Then
3.4.4 無狀態(tài)
3.4.5 名稱和描述
3.5 注釋
3.6 語言
3.7 我們學(xué)到了什么
第4章 步驟定義:外在篇
4.1 步驟和步驟定義
4.1.1 匹配步驟
4.1.2 創(chuàng)建步驟定義
4.1.3 Given、When和Then是相同的
4.1.4 使用本國語言
4.2 捕獲參數(shù)
4.2.1 捕獲組
4.2.2 多選分支
4.2.3 點號
4.2.4 星號修飾符
4.2.5 字符組
4.2.6 字符組簡記法
4.2.7 加號修飾符
4.3 多重捕獲
4.4 靈活性
4.4.1 問號修飾符
4.4.2 非捕獲組
4.4.3 錨點
4.5 返回結(jié)果
4.5.1 未定義的步驟
4.5.2 待定的步驟
4.5.3 失敗的步驟
4.6 我們學(xué)到了什么
第5章 富有表現(xiàn)力的場景
5.1 背景
5.2 數(shù)據(jù)表
5.2.1 在步驟定義中處理數(shù)據(jù)表
5.2.2 將數(shù)據(jù)表轉(zhuǎn)換成數(shù)組
5.2.3 使用diff!比較數(shù)據(jù)表
5.3 場景輪廓
5.3.1 更大的占位符
5.3.2 多個實例表
5.3.3 解釋自己
5.4 嵌套步驟
5.4.1 嵌套步驟重構(gòu)
5.4.2 參數(shù)和嵌套步驟
5.4.3 嵌套步驟的危險
5.5 文檔字符串
5.6 使用標(biāo)簽和子文件夾保持條理性
5.6.1 子文件夾
5.6.2 運行子文件夾中的特性
5.6.3 標(biāo)簽
5.7 我們學(xué)到了什么
第6章 Cucumber常見問題及解決之道
6.1 感受痛苦
6.1.1 閃爍的場景
6.1.2 脆弱的特性
6.1.3 緩慢的特性
6.1.4 厭倦的利益相關(guān)人
6.2 同心協(xié)力
6.2.1 偶然細(xì)節(jié)
6.2.2 命令式步驟
6.2.3 重復(fù)
6.2.4 語言不通用
6.2.5 閉門造車式的特性
6.3 照管好你的測試
6.3.1 滲露的場景
6.3.2 競爭條件和打瞌睡的步驟
6.3.3 共享的環(huán)境
6.3.4 被隔離的測試人員
6.3.5 固件數(shù)據(jù)
6.3.6 大量場景
6.3.7 大泥球
6.4 停掉生產(chǎn)線和缺陷預(yù)防
6.5 我們學(xué)到了什么

第二部分 可以工作的示例
第7章 步驟定義:內(nèi)在篇
7.1 勾勒出領(lǐng)域模型
7.1.1 準(zhǔn)確用詞
7.1.2 實話實說
7.1.3 做最簡單的事情
7.2 使用變形器消除重復(fù)
7.3 為World添加自定義輔助方法
7.3.1 在World中存儲狀態(tài)
7.3.2 創(chuàng)建自定義輔助方法
7.3.3 自定義World
7.3.4 設(shè)計抵達(dá)終點線的方法
7.4 組織代碼
7.4.1 隔離應(yīng)用程序代碼
7.4.2 啟動Cucumber環(huán)境
7.4.3 變形器和World模塊
7.4.4 組織步驟定義
7.4.5 模擬運行和env.rb
7.5 我們學(xué)到了什么
第8章 支持代碼
8.1 修復(fù)bug
檢查和重構(gòu)
8.2 開啟用戶界面
安裝gem
8.3 做出轉(zhuǎn)換
設(shè)計用戶界面
8.4 使用鉤子
8.4.1 打標(biāo)簽的鉤子
8.4.2 觀察場景
8.4.3 Around鉤子
8.4.4 在其他時間運行的鉤子
8.5 構(gòu)建用戶界面
提供現(xiàn)金
8.6 我們學(xué)到了什么
第9章 處理消息隊列和異步組件
9.1 我們?nèi)碌漠惒郊軜?gòu)
9.2 如何同步
9.2.1 通過監(jiān)聽同步
9.2.2 通過取樣同步
9.3 實現(xiàn)新架構(gòu)
9.3.1 驅(qū)動出接口
9.3.2 構(gòu)建交易隊列
9.3.3 構(gòu)建BalanceStore
9.3.4 添加鉤子以重置狀態(tài)
9.3.5 構(gòu)建Transaction Processor
9.4 修復(fù)閃爍的場景
9.4.1 安裝及配置Service Manager
9.4.2 調(diào)查閃爍
9.4.3 使用取樣修復(fù)閃爍
9.4.4 測試什么都沒有發(fā)生
9.5 我們學(xué)到了什么
第10章 數(shù)據(jù)庫
10.1 ActiveRecord介紹
使用遷移管理模式變更
10.2 重構(gòu)至使用數(shù)據(jù)庫
10.3 讀取及寫入數(shù)據(jù)庫
10.4 用事務(wù)清理數(shù)據(jù)庫
10.5 使用截斷清理數(shù)據(jù)庫
10.6 我們學(xué)到了什么

第三部分 應(yīng)用Cucumber
第11章 Cucumber命令行界面
11.1 Cucumber命令行選項
11.2 運行一個場景子集
11.2.1 使用標(biāo)簽表達(dá)式過濾
11.2.2 基于行號過濾
11.2.3 基于名稱過濾
11.3 改變Cucumber的輸出
11.3.1 特殊的格式器
11.3.2 格式化至文件及使用多種格式器
11.3.3 顯示完整回溯
11.4 指定步驟定義的位置
11.5 管理進(jìn)行中的工作
11.6 使用profile
11.7 從Rake運行Cucumber
11.8 在持續(xù)集成中運行Cucumber
11.8.1 嚴(yán)格要求
11.8.2 共享報告
11.9 我們學(xué)到了什么
第12章 測試REST Web服務(wù)
12.1 進(jìn)程內(nèi)測試基于Rack的REST API
12.1.1 建立應(yīng)用的骨架——然后存儲一些水果
12.1.2 使用Rack-Test測一測我們的應(yīng)用
12.1.3 比較JSON
12.2 進(jìn)程外測試任意REST API
12.3 我們學(xué)到了什么
第13章 為遺留應(yīng)用添加測試
13.1 特性描述測試
13.2 消滅bug
13.3 添加新的行為
13.4 代碼覆蓋率
13.5 我們學(xué)到了什么
第14章 引導(dǎo)Rails
14.1 運行生成器
14.2 創(chuàng)建用戶
14.3 發(fā)布消息
14.4 關(guān)聯(lián)消息與用戶
14.5 手工創(chuàng)建控制器
14.6 實現(xiàn)視圖
14.7 我們學(xué)到了什么
第15章 使用Capybara測試Ajax Web應(yīng)用
15.1 實現(xiàn)不用Ajax的簡單搜索
15.1.1 準(zhǔn)備內(nèi)容以供搜索
15.1.2 導(dǎo)航、填寫輸入域和點擊按鈕
15.1.3 修復(fù)控制器代碼
15.1.4 讓Capybara做點事情
15.1.5 驗證頁面內(nèi)容
15.1.6 從頁面中提取數(shù)據(jù)
15.1.7 使用表格比較
15.2 基于Ajax的搜索
15.2.1 使用Selenium
15.2.2 活動搜索的設(shè)計
15.2.3 讓W(xué)eb應(yīng)用返回JSON
15.2.4 處理Ajax的異步特性
15.3 Capybara API
15.3.1 導(dǎo)航
15.3.2 鏈接與按鈕點擊
15.3.3 表單交互
15.3.4 查詢
15.3.5 查找
15.3.6 范圍限定
15.4 抓取屏幕截圖
15.5 我們學(xué)到了什么
第16章 使用Aruba測試命令行應(yīng)用
16.1 簡單界面
16.2 我們的第一個Aruba特性
16.2.1 流和退出狀態(tài)
16.2.2 安裝Aruba
16.2.3 考察Aruba的步驟定義
16.3 使用文件與可執(zhí)行程序
16.3.1 使用@announce查看Aruba見到的內(nèi)容
16.3.2 隔離場景
16.3.3 告知Aruba勿刪文件
16.3.4 設(shè)置Aruba的工作目錄
16.3.5 設(shè)置$PATH
16.4 與用戶輸入交互
16.5 使用Aruba的Ruby DSL
16.6 我們學(xué)到了什么

附錄A 在其他平臺上使用Cucumber
附錄B 安裝Cucumber
B.1 安裝Ruby
B.1.1 OS X和Linux
B.1.2 Windows
B.2 HTTP代理設(shè)置
B.3 安裝Bundler
B.4 安裝Cucumber(及RSpec)
B.5 安裝其他gem
B.6 選擇一款文本編輯器
附錄C Ruby gem版本
附錄D 參考文獻(xiàn)

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號