1.1 什么是行為驅動測試
說起行為驅動,相信很多人聽說過。
行為驅動開發-BDD(Behavior Driven Development)是一個誕生於2003年的軟件開發理念。其關鍵思想在於通過與利益相關者的討論取得對預期的軟件行為的清醒認識,它通過用自然語言書寫非程序員可讀的測試用例擴展了測試驅動開發方法。BDD提供了一種通用的,簡單的,結構化的描述語言,這種語言既可以是英語也可以是其他本地的語言,通過他能夠很方便讓項目成員和業務干系人非常順暢的溝通需求,而這些干系人可以不懂的任何編程語言和技術細節。這種理念的優勢是顯而易見的,那就是我們的整個軟件研發過程可以更易懂,更容易貼近用戶需求,從而可以得到很好的反饋和交互效果,並且縮減了許多中間環節(比如將系統的實現細節解釋給用戶)。
而所謂行為驅動測試則是在BDD的概念中進一步延申,闡述的是我們在測試過程中采用行為驅動的理念,將我們的測試用例使用結構化的表述語言進行組織。這樣我們的測試過程,特別是測試用例就可以更容易為團隊的各方面以及客戶所明了。在這樣的條件下,我們可以認為我們的測試用例幾乎完全代表用戶立場,而用這樣的測試過程去驗證我們的開發過程,也可稱得上是‘測試驅動開發’的一種初步體現形式。
1.2 什么是Cucumber
Cucumber是一個支持行為驅動的開發的開源工具。 更准確地說,Cucumber可以定義為一個測試框架,由簡單的英語(或其他自然語言)文本驅動,我們可以將它作為文檔、自動化測試和開發幫助。我們將Cucumber這個框架和Selenium結合起來實現自動化測試,就可以讓我們的自動化過程體現出‘行為驅動’的特性。
1.3 搭建Cucumber環境
如果我們使用Maven來搭建cucumber環境相對來說會非常簡單,只需在pom文件中添加相應的dependencies就可以讓maven為我們自動抓取和配置項目所需jar包。
出於學習目的,我們不使用maven,而是手動去配置這些依賴。
要搭建Cucumber環境,我們需要以下的東西:
- JDK:推薦使用1.8
- 集成開發環境:這里我們使用eclipse
- eclipse的cucumber插件
- cucumber框架所需的jar包
- selenium的相應jar包
1.3.1 JDK安裝
JDK的下載安裝和環境變量配置網上有大量教程,本文不再贅述。
1.3.2 eclipse安裝
eclipse的安裝也非常簡單,本文不再贅述。
1.3.3 cucumber插件安裝
通過eclipse菜單,Help->Install New Software進入安裝插件。添加安裝地址http://mrpotes.github.com/cukes-jvm-eclipse-plugin/update-site,將Cucumber JVM插件勾選並安裝即可。
1.3.4 下載selenium和cucumber所需jar包
我們所需要的jar包就是上圖所示這些,他們都可以在Mavenrepository下載到:https://mvnrepository.com/。
搜索這些jar包,就能下載到相應的文件,比如cucumber-core-1.2.2.jar:https://mvnrepository.com/artifact/info.cukes/cucumber-core/1.2.2
通過紅框中的下載鏈接就能獲取相應jar包,其他jar包同樣如此。
下好所有jar包以后,我們在eclipse中新建一個java project,在項目下新建lib文件夾,將以上所有jar包拷貝到文件夾中。然后,右鍵點擊項目,選擇Build Path -> Config Build Path.
通過Libraries界面,選擇Add Library,將這些jar包添加進來:
添加完后,點擊OK。到此為止,我們的Cucumber + Selenium + Java環境就已經搭建完成了。
本文用到的所有資源都在以下網盤地址可以拿到( 提取碼:su5z)。
下一篇我們就開始寫第一個cucumber自動化測試用例。