簡介
cucumber是采用Gherkin語法栗弟,使用文本描述語言來執(zhí)行測試用例的工具。其中工闺,Gherkin是用于描述軟件的行為而不需要了解具體的實現(xiàn)乍赫。支持的語言超過60種語言,包括中文陆蟆;文件以.feature做為后綴雷厂。
Feature文件
feature文件都是用于描述功能。若使用的是描述語言是中文叠殷,那么在文件起始位置需要聲明:
#language: zh-CN
每個功能下面擁有許多的場景(scenario)罗侯,每個場景有包含許多的步驟,其中步驟使用假設(Given)溪猿、當(when)钩杰、然后/那么(then)、和(and)這些關鍵字诊县。從關鍵字中可以看出讲弄,Given是準備數(shù)據(jù),when之后是有動作(操作)依痊,then表示判斷和結果避除。
# 花錢.feature
假設 我有很多錢,種類如下:
| id | type |amount|
| 1 | 人民幣 |1000000|
| 2 | 美元 |9999|
當 我全部花了
那么 我會沒錢了
注:and可以在一個步驟中代替多個起始動作(Given,Then)
step_definitions文件夾
在這個文件夾中編寫了步驟定義的文件,如(money_step.rb)
Given(/^我有很多錢,種類如下:$/) do |table|
table.hashes.each do |row|
puts row[:type]
end
end
When(/^我全部花了$/) do
puts "花了"
end
When(/^我會沒錢了$/) do
puts "沒了"
end
運行之后的結果如圖:
![)3UT9PQS95%M]BI5C7PUDVO.jpg](http://upload-images.jianshu.io/upload_images/2283607-c788294c89cb6fed.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
以上簡單描述了cucumber的基本使用,這里:cucumber wiki有更全面的說明胸嘁。