Gherkin 語(yǔ)言如何彌合客戶和開(kāi)發(fā)人員之間的差距
與軟件開(kāi)發(fā)人員溝通通常是一項(xiàng)繁重的任務(wù),尤其是當(dāng)人們?nèi)狈夹g(shù)知識(shí)和技術(shù)詞匯時(shí)。這就是為什么項(xiàng)目經(jīng)理經(jīng)常使用 用戶故事 和多功能系統(tǒng)隱喻。
你可以利用旨在促進(jìn)項(xiàng)目利益相關(guān)者和開(kāi)發(fā)人員之間討論的技術(shù),進(jìn)一步協(xié)助溝通。
Cucumber 框架
Cucumber 是一個(gè)開(kāi)源框架,可以使用易于編寫(xiě)的通用語(yǔ)言創(chuàng)建自動(dòng)化軟件測(cè)試。它基于 行為驅(qū)動(dòng)開(kāi)發(fā)(BDD) 的概念,該概念規(guī)定創(chuàng)建軟件應(yīng)定義用戶希望應(yīng)用在特定條件成立時(shí)如何表現(xiàn)。
(LCTT 譯注:Gherkin 和 Cucumber 都是黃瓜,其中 Gherkin 一種用來(lái)腌制的小黃瓜。順便說(shuō)一句,黃瓜原名胡瓜,因其由漢朝張騫出使西域時(shí)帶回,后因石勒禁稱“胡”字,更名為黃瓜。)
Cucumber 框架并不是現(xiàn)代意義上的“技術(shù)”。它不是位和字節(jié)的集合。相反,它是一種用自然語(yǔ)言(在本文中為英語(yǔ),但到目前為止 Gherkin 已被翻譯成 70 多種語(yǔ)言)的寫(xiě)作方式。使用 Cucumber 框架時(shí),你不需要知道如何讀取或編寫(xiě)代碼。你只需要能夠?qū)懴履銓?duì)工作方式的想法即可。你還應(yīng)該使用一組特定術(shù)語(yǔ)和指南來(lái)記錄你希望技術(shù)如何為你服務(wù)。
Gherkin 語(yǔ)言是什么?
Cucumber 使用 Gherkin 作為定義用例的方法。它主要用于生成明確的項(xiàng)目需求。換句話說(shuō),其目的是允許用戶準(zhǔn)確地描述他們需要軟件做什么,不留任何解釋或例外的空間。它幫助你思考技術(shù)事務(wù)的過(guò)程,然后幫助你以可轉(zhuǎn)化為程序員邏輯的形式將其寫(xiě)下來(lái)。
這是一個(gè)例子:
功能:活期賬戶持有人取款
場(chǎng)景:有關(guān)賬戶并不缺少資金
假如賬戶余額為 200 英鎊
借記卡有效
取款機(jī)里有足夠的錢(qián)
當(dāng)活期賬戶持有人申請(qǐng) 50 英鎊時(shí)
則取款機(jī)支付 50 英鎊
賬戶余額為 150 英鎊
借記卡被退回
正如你所看到的,這是一個(gè)非常具體的場(chǎng)景,其中假設(shè)用戶請(qǐng)求 50 英鎊,取款機(jī)提供 50 英鎊并相應(yīng)地調(diào)整用戶的帳戶余額。此場(chǎng)景只是取款機(jī)用途的一部分,它僅代表人與取款機(jī)交互的特定組成部分。當(dāng)程序員被賦予對(duì)機(jī)器進(jìn)行編程以響應(yīng)用戶請(qǐng)求的任務(wù)時(shí),這清楚地表明了涉及哪些因素。
Gherkin 關(guān)鍵字是什么?
Gherkin 語(yǔ)法使用五個(gè)不可或缺的語(yǔ)句來(lái)描述執(zhí)行任務(wù)所需的操作:
- 功能Feature:表示任何給定軟件功能的高層次描述
- 場(chǎng)景Scenario:描述具體_示例_
- 假如Given:解釋系統(tǒng)的初始上下文
- 當(dāng)When:指定事件或操作
- 則Then:描述預(yù)期輸出或結(jié)果
- 而且And(或者 但是But):增加文本流暢性
(LCTT 譯注:這些關(guān)鍵字可以使用任何語(yǔ)言,請(qǐng)參照:https://cucumber.io/docs/gherkin/languages/)
通過(guò)使用這些簡(jiǎn)單的關(guān)鍵字,客戶、分析師、測(cè)試人員和軟件程序員能夠使用所有人都能識(shí)別的術(shù)語(yǔ)來(lái)交換想法。
可執(zhí)行的需求和自動(dòng)化測(cè)試
更好的是,Gherkin 要求也是可執(zhí)行的。這是通過(guò)將每個(gè)關(guān)鍵字映射到其預(yù)期(且明確說(shuō)明)的功能來(lái)完成的。因此,為了與上面的示例保持一致,任何已經(jīng)實(shí)現(xiàn)的內(nèi)容都可以自動(dòng)顯示為綠色:
當(dāng)活期賬戶持有人申請(qǐng) 50 英鎊時(shí)
則取款機(jī)支付 50 英鎊
賬戶余額為 150 英鎊
借記卡被退回
通過(guò)擴(kuò)展,Gherkin 使開(kāi)發(fā)人員能夠?qū)⑿枨筠D(zhuǎn)換為可測(cè)試的代碼。在實(shí)踐中,你可以使用特定的短語(yǔ)來(lái)檢查你的軟件方案!如果你當(dāng)前的代碼無(wú)法正常工作,或者新的更改意外導(dǎo)致軟件錯(cuò)誤(或兩個(gè)或三個(gè)),那么你可以輕松查明問(wèn)題,然后再繼續(xù)修復(fù)它們。
結(jié)論
得益于 Gherkin 語(yǔ)法,你的客戶將不再陷入困境。你可以彌合企業(yè)和開(kāi)發(fā)人員之間的鴻溝,并比以往更有信心地交付出色的產(chǎn)品。
通過(guò)訪問(wèn) Cucumber 網(wǎng)站 或其 Git 倉(cāng)庫(kù) 了解有關(guān) Gherkin 的更多信息。