A-TDD(Acceptance test-driven development ) with Robot framework
創(chuàng)新互聯(lián)公司是一家專業(yè)提供永川企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站設(shè)計(jì)制作、網(wǎng)站制作、H5響應(yīng)式網(wǎng)站、小程序制作等業(yè)務(wù)。10年已為永川眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。在了解A-TTD之前,先了解下TTD。
測(cè)試驅(qū)動(dòng)開(kāi)發(fā),英文全稱Test-Driven Development,簡(jiǎn)稱TDD,是一種不同于傳統(tǒng)軟件開(kāi)發(fā)流程的新型的開(kāi)發(fā)方法。它要求在編寫某個(gè)功能的代碼之前先編寫測(cè)試代碼,然后只編寫使測(cè)試通過(guò)的功能代碼,通過(guò)測(cè)試來(lái)推動(dòng)整個(gè)開(kāi)發(fā)的進(jìn)行。這有助于編寫簡(jiǎn)潔可用和高質(zhì)量的代碼,并加速開(kāi)發(fā)過(guò)程。
A-TTD(驗(yàn)收測(cè)試驅(qū)動(dòng)開(kāi)發(fā))非常接近T-DD。 不同點(diǎn)在于A-TDD強(qiáng)調(diào)開(kāi)發(fā)-測(cè)試-客戶之間的協(xié)同, A-TTD是一種協(xié)同需求發(fā)現(xiàn)方法,利用示例和可自動(dòng)的測(cè)試來(lái)明確需求,創(chuàng)建可執(zhí)行用例方法。
ATTD(驗(yàn)收測(cè)試驅(qū)動(dòng)開(kāi)發(fā))是敏捷和scrum經(jīng)常采用的實(shí)踐方法??驁D如下:
1. Discuss the requirement in a workshop (在專題討論會(huì)中討論需求)
2. Develop them concurrently during the iteration (在迭代中并行開(kāi)發(fā))
3. Deliver the result to the stakeholder for acceptance. (提交結(jié)果給利益相關(guān)方進(jìn)行驗(yàn)收)
Discuss(討論):
paticipants: product owner, related stakeholder, developer
如何討論:假象系統(tǒng)完成,你會(huì)如何使用系統(tǒng)并期待它能實(shí)現(xiàn)什么。
研討會(huì)的重點(diǎn)是討論并發(fā)現(xiàn)需求,而不是實(shí)際的測(cè)試。
Develop(開(kāi)發(fā)):
將示例提取成測(cè)試。
需求實(shí)現(xiàn)活動(dòng)的開(kāi)發(fā)(包括test libraries,tables )
實(shí)現(xiàn)需求通過(guò)測(cè)試。
Deliver(交付):
當(dāng)測(cè)試通過(guò)后,需求會(huì)被產(chǎn)品負(fù)責(zé)人和其他利益相關(guān)方評(píng)審,這可能導(dǎo)致新的需求產(chǎn)生或現(xiàn)有測(cè)試的變化
下圖是一個(gè)更為詳細(xì)的A-TDD框架圖
A-TDD如何map到Scrum迭×××發(fā)
討論:在具體的Sprint計(jì)劃之前,團(tuán)隊(duì),產(chǎn)品負(fù)責(zé)人,相關(guān)利益方需要在專題討論會(huì)中澄清需求。
并行開(kāi)發(fā):在迭×××發(fā)的過(guò)程中,實(shí)現(xiàn)需求的開(kāi)發(fā),驗(yàn)證實(shí)現(xiàn)的測(cè)試需要在sprint 的backlog中計(jì)劃
交付驗(yàn)收:交付基于需求的產(chǎn)品和驗(yàn)收測(cè)試的case給相關(guān)利益方并組織Sprint review討論。
A-TDD例子示范(ATTD with Robot Framework)
Robot背景:Robot Framework是一個(gè)基于關(guān)鍵字驅(qū)動(dòng)的自動(dòng)化測(cè)試框架。 具體信息參見(jiàn)
www.robotframework.org
現(xiàn)有一個(gè)供應(yīng)商展銷會(huì)的信息查詢系統(tǒng), 通過(guò)該系統(tǒng)參觀者可以用它來(lái)查詢下面的信息:
我在哪里可以找到供應(yīng)商X的展銷攤位?
我怎么才能到達(dá)那個(gè)地方?
最近的餐廳在哪里?
其他參觀者對(duì)本次展銷會(huì)的評(píng)價(jià)。
案例一: 供應(yīng)商列表
一: 需求澄清(產(chǎn)生具體的示例)
客戶:需要把所有的供應(yīng)商名單制作成一份“好的表格”
開(kāi)發(fā):能舉得例子嗎?什么是一份“好的表格”
客戶:下面是一個(gè)例子:
討論: 發(fā)現(xiàn)假如有微小的不同,將會(huì)發(fā)生重復(fù)的輸入(比如相同的供應(yīng)商,不同的展位等)。
開(kāi)發(fā):數(shù)據(jù)庫(kù)中什么樣數(shù)據(jù)可以導(dǎo)出一份“好的供應(yīng)商列表”
客戶:
從上面的表格可以發(fā)現(xiàn),相同的供應(yīng)商由于展位信息不同,有美有l(wèi)ogo, 會(huì)存在一些重復(fù)。
二. 需求示例提取成Robot framework的測(cè)試用例。
這里簡(jiǎn)單介紹下Robot framework, 具體參見(jiàn)www.robotframework.org
Robot framework 包含4個(gè)表格:
測(cè)試用例表: 包含實(shí)際的測(cè)試用例,表頭是“Test Case”
關(guān)鍵字表: 包含底層的用戶關(guān)鍵字,這些關(guān)鍵字組成了測(cè)試用例的結(jié)構(gòu),表頭是Keyword 或者是 “User Keyword”
設(shè)置表:允許引用文件,lib. 表頭是“setting”或者“settings”
變量表:聲明變量, 表頭是“Variable”或者 “Variables”
下面是Robot framwork的調(diào)用過(guò)程:
測(cè)試用例和用戶關(guān)鍵字是填在Robot Framework 里面的,F(xiàn)ramework調(diào)用 test libraries, 它再調(diào)用待測(cè)系統(tǒng)。
現(xiàn)在從示例中抽取測(cè)試用例。
測(cè)試用例執(zhí)行,發(fā)現(xiàn)keywords “Stand input”, “Is stand output ” , “Has no extra stands” are undefined.
下面我用user keyword 實(shí)現(xiàn) “Is stand output ” , “Has no extra stands”。
再次跑測(cè)試用例發(fā)現(xiàn)下面keyword 沒(méi)有定義:”Stand out”, “Get current log”, “Get current name” , “Get current place”, “Stands left”. 而這些關(guān)鍵字將會(huì)在test library里面實(shí)現(xiàn)。
當(dāng)前待測(cè)系統(tǒng)是用C語(yǔ)言寫的,可以通過(guò)用戶接口來(lái)調(diào)用或者直接調(diào)用。該案例采用直接調(diào)用(使用 ctypes foreign library)。test library 代碼如下:
結(jié)論:
A-TTD是一個(gè)相互協(xié)作的需求澄清工具,它使用可執(zhí)行的用例去探索需求。需求--> 需求例子表格--> Robot 表格 --> 可執(zhí)行用例(表格表述)
Robot Framework 是一個(gè)基于A-TDD思想的測(cè)試框架。它采用表格化的結(jié)構(gòu)來(lái)表述一個(gè)用例,再通過(guò)test libraries 去實(shí)現(xiàn)用例的可執(zhí)行話。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
分享名稱:基于RobotFramework的驗(yàn)收測(cè)試驅(qū)動(dòng)開(kāi)發(fā)-創(chuàng)新互聯(lián)
網(wǎng)址分享:http://www.rwnh.cn/article44/ccghhe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站、營(yíng)銷型網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容