一分鐘認(rèn)識(shí):Cucumber框架(一)

個(gè)人感覺這個(gè)框架非常適合UI自動(dòng)化測試鹰晨,他不僅能把用例中的測試步驟以非常友好的形式展現(xiàn)出來,而且能夠非常靈活的構(gòu)建場景甥绿;

一澄峰、簡介

  • Cucumber 是一個(gè)能夠理解用普通語言 描述的測試用例的行為驅(qū)動(dòng)開發(fā)(BDD)的自動(dòng)化測試工具垮斯,用Ruby**編寫沼头,支持Java和·Net等多種開發(fā)語言。

  • Cucumber可以讓人們用近似自然的語言去描述Feature和場景,根據(jù)Feature驅(qū)動(dòng)開發(fā)。用作軟件技術(shù)人員和非技術(shù)之間驗(yàn)收測試的橋梁剖张。它是一個(gè)命令行工具顾彰。運(yùn)行后茶鹃,會(huì)執(zhí)行features中的內(nèi)容兑障。feature中的step會(huì)調(diào)用stepdefinitions(Ruby代碼)可以用標(biāo)簽來組織場景支持40多種語言高質(zhì)量集成Ruby

二、Cucumber三大組成

  • 組成
    Features蕉汪、Step_definitions流译、Cucumber command。
結(jié)構(gòu)圖
  • 對應(yīng)傳統(tǒng)測試工具:
    Feature (功能)-------------test suite (測試用例集)
    Scenario(情景)-----------test case (測試用例)
    Given(給定)-------------setup(創(chuàng)建測試所需環(huán)境)
    When(當(dāng))----------------test(觸發(fā)被測事件)
    Then(則)-----------------assert(斷言者疤,驗(yàn)證結(jié)果)

  • 工作原理:

工作原理

三福澡、Features

  • 語法規(guī)則:
  • 基于Gherkin。支持語言:# language: en (zh-CN)等
  • Features文件必須以.features命名驹马。
  • 包含title革砸,多個(gè)scenarios,每個(gè)scenario包含多個(gè)step糯累。
  • Step定義必須以關(guān)鍵字Given算利,When,Then泳姐,And開始效拭。

四、Step_definitions

  • 根據(jù)feature文件中定義的step編寫對應(yīng)的測試代碼。

五允耿、Cucumber command

  • 運(yùn)行:*.feature文件借笙。cucumber會(huì)分析feature文件中定義的step,然后去step - definitions尋找相匹配的step较锡,執(zhí)行step中的代碼。
  • 運(yùn)行結(jié)果以html的形式保存盗痒,fail的情況查看對應(yīng)log日志

六蚂蕴、Cucumber的開發(fā)過程

  • 創(chuàng)建feature文件,包括feature,scenarios和step俯邓。
  • 創(chuàng)建step_definitions骡楼,即RUBY代碼并實(shí)現(xiàn)。如果只有step稽鞭,沒有step definitions鸟整,會(huì)報(bào)undefined錯(cuò)。Ruby寫法:Given /^the input "([^"]*)"$/ do |arg1|朦蕴。運(yùn)行feature篮条,控制臺(tái)中會(huì)輸出RUBY的實(shí)現(xiàn)方法,只要實(shí)現(xiàn)step_definitions即可吩抓。
  • cucumber --format progress涉茧。格式化輸出≌钊ⅲ可修改為html伴栓,xml等格式輸出。
  • 添加斷言:
  • 一個(gè)場景失敗雨饺,Cucumber將此場景標(biāo)記失敗钳垮,轉(zhuǎn)去執(zhí)行下一場景。
  • 一個(gè)step失敗额港,會(huì)跳過這個(gè)scenario的其余step饺窿,從而終止這個(gè)scenario。

七. Gherkin方法:

  • 關(guān)鍵字:
  • Feature
  • Background
  • Scenario
  • Scenario Outline
  • Scenarios(or Examples)
  • Given
  • When
  • Then
  • And(or But)
  • |(用來定義表格)
  • """(定義多行字符串)
  • # (注釋)

五锹安、示例代碼

點(diǎn)擊查看[https://github.com/maxuechaogao/demo-cucumber.git]

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末短荐,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子叹哭,更是在濱河造成了極大的恐慌忍宋,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,454評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件风罩,死亡現(xiàn)場離奇詭異糠排,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)超升,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評論 3 385
  • 文/潘曉璐 我一進(jìn)店門入宦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來哺徊,“玉大人,你說我怎么就攤上這事乾闰÷渥罚” “怎么了?”我有些...
    開封第一講書人閱讀 157,921評論 0 348
  • 文/不壞的土叔 我叫張陵涯肩,是天一觀的道長轿钠。 經(jīng)常有香客問我,道長病苗,這世上最難降的妖魔是什么疗垛? 我笑而不...
    開封第一講書人閱讀 56,648評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮硫朦,結(jié)果婚禮上贷腕,老公的妹妹穿的比我還像新娘。我一直安慰自己咬展,他們只是感情好泽裳,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,770評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著挚赊,像睡著了一般诡壁。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上荠割,一...
    開封第一講書人閱讀 49,950評論 1 291
  • 那天妹卿,我揣著相機(jī)與錄音,去河邊找鬼蔑鹦。 笑死夺克,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的嚎朽。 我是一名探鬼主播铺纽,決...
    沈念sama閱讀 39,090評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼哟忍!你這毒婦竟也來了狡门?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,817評論 0 268
  • 序言:老撾萬榮一對情侶失蹤锅很,失蹤者是張志新(化名)和其女友劉穎其馏,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體爆安,經(jīng)...
    沈念sama閱讀 44,275評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡叛复,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,592評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片褐奥。...
    茶點(diǎn)故事閱讀 38,724評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡咖耘,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出撬码,到底是詐尸還是另有隱情儿倒,我是刑警寧澤,帶...
    沈念sama閱讀 34,409評論 4 333
  • 正文 年R本政府宣布耍群,位于F島的核電站义桂,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏蹈垢。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,052評論 3 316
  • 文/蒙蒙 一袖裕、第九天 我趴在偏房一處隱蔽的房頂上張望曹抬。 院中可真熱鬧,春花似錦急鳄、人聲如沸谤民。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽张足。三九已至,卻和暖如春坎藐,著一層夾襖步出監(jiān)牢的瞬間为牍,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評論 1 266
  • 我被黑心中介騙來泰國打工岩馍, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留碉咆,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,503評論 2 361
  • 正文 我出身青樓蛀恩,卻偏偏與公主長得像疫铜,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子双谆,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,627評論 2 350

推薦閱讀更多精彩內(nèi)容