几种典型的软件自动化测试框架
? ? ? ?在自動(dòng)化的軟件測(cè)試系統(tǒng)實(shí)現(xiàn)過(guò)程中使用框架設(shè)計(jì)可以使得測(cè)試腳本的維護(hù)量減至最少。然而,大量的自動(dòng)化測(cè)試工具均采用傳統(tǒng)的“錄制一回放”模
型,導(dǎo)致了較高的腳本維護(hù)量,因?yàn)闇y(cè)試數(shù)據(jù)在測(cè)試腳本程序中是以硬編碼方式實(shí)現(xiàn)的。此外,工具內(nèi)建的測(cè)試用例除了測(cè)試應(yīng)用程序的圖形用戶(hù)界面,實(shí)際
上并沒(méi)有其它用處。因此,如何選擇一個(gè)合適的測(cè)試自動(dòng)化框架,是一個(gè)自動(dòng)化測(cè)試小組開(kāi)始啟動(dòng)前需要最優(yōu)先考慮的一個(gè)問(wèn)題。
? ? ? ? ?一個(gè)自動(dòng)化測(cè)試框架就是一個(gè)由假設(shè)、概念以及為自動(dòng)化測(cè)試提供支持的實(shí)踐的集合。以下描述五種基本的自動(dòng)測(cè)試框架:模塊化測(cè)試腳本框架,測(cè)試庫(kù)構(gòu)
架框架,關(guān)鍵字驅(qū)動(dòng)/表驅(qū)動(dòng)測(cè)試框架,數(shù)據(jù)驅(qū)動(dòng)測(cè)試框架,以及混合測(cè)試框架??梢愿鶕?jù)實(shí)際需要去考慮采用其中的一種測(cè)試框架而不是僅僅依賴(lài)于一個(gè)簡(jiǎn)單
的捕獲工具。同時(shí),這些框架是了解自動(dòng)測(cè)試框架以及根據(jù)自己的需要和經(jīng)驗(yàn)來(lái)設(shè)計(jì)自動(dòng)測(cè)試框架的基礎(chǔ)。
1.模塊化測(cè)試框架
? ? ? ?模塊化測(cè)試腳本框架(TEST MODulARITY FRAMEWORK)需要?jiǎng)?chuàng)建小而獨(dú)立的可以描述的模塊、片斷以及待測(cè)應(yīng)用程序的腳本。這些樹(shù)狀結(jié)構(gòu)的小腳本組合起來(lái),就能組成能用于特定的測(cè)試用例的腳本。
? ? ? ? ?在五種框架中,模塊化框架是最容易掌握和使用的。在一個(gè)組件上方建立一個(gè)抽象層使其在余下的應(yīng)用中隱藏起來(lái),這是眾所周知的編程技巧。這樣應(yīng)用同組件中的修改隔離開(kāi)來(lái),提供了程序設(shè)計(jì)的模塊化特性。模塊化測(cè)試腳本框架使用這一抽象或者封裝的原理來(lái)提高自動(dòng)測(cè)試組合的可維護(hù)性和可升級(jí)性。
2.測(cè)試庫(kù)框架
?測(cè)試庫(kù)框架(Test Library Architecture)與模塊化測(cè)試腳本框架很類(lèi)似,并且具有同樣的優(yōu)點(diǎn)。不同的是測(cè)試庫(kù)框架把待測(cè)應(yīng)用程序分解為過(guò)程和函數(shù)而不是腳本。這個(gè)框架需要?jiǎng)?chuàng)建描述模塊、片斷以及待測(cè)應(yīng)用程序的功能庫(kù)文件。
3.關(guān)鍵字驅(qū)動(dòng)或表驅(qū)動(dòng)的測(cè)試框架
對(duì)于一個(gè)獨(dú)立于應(yīng)用的自動(dòng)化框架,關(guān)鍵字驅(qū)動(dòng)(KEYWORD DRIVEN)I9LJJ試和表驅(qū)動(dòng)(TABLE DRIVEN)測(cè)試是可以互換的術(shù)語(yǔ)。這個(gè)框架需要開(kāi)發(fā)數(shù)據(jù)表和關(guān)鍵字。這些數(shù)據(jù)表和關(guān)鍵字獨(dú)立于執(zhí)行它們的測(cè)試自動(dòng)化工具,并可以用來(lái)“驅(qū)動(dòng)"待測(cè)應(yīng)用程序和數(shù)據(jù)的測(cè)試腳本代碼,關(guān)鍵宇驅(qū)動(dòng)測(cè)試看上去與手工測(cè)試用例很類(lèi)似。在一個(gè)關(guān)鍵字驅(qū)動(dòng)測(cè)試中,把待測(cè)應(yīng)用程序的功能和每個(gè)測(cè)試的執(zhí)行步驟一起寫(xiě)到一個(gè)表中。
這個(gè)測(cè)試框架可以通過(guò)很少的代碼來(lái)產(chǎn)生大量的測(cè)試用例。同樣的代碼在用數(shù)據(jù)表來(lái)產(chǎn)生各個(gè)測(cè)試用例的同時(shí)被復(fù)用。
4.數(shù)據(jù)驅(qū)動(dòng)測(cè)試框架
數(shù)據(jù)驅(qū)動(dòng)(DATA DRIVEN),LJ試是一個(gè)框架。在這里測(cè)試的輸入和輸出數(shù)據(jù)是從數(shù)據(jù)文件中讀取(數(shù)據(jù)池,ODBC源,CSV文件,EXCEL文件,ADO對(duì)象等)并且通過(guò)捕獲工具生成或者手工生成的代碼腳本被載入到變量中。在這個(gè)框架中,變量不僅被用來(lái)存放輸入值還被用來(lái)存放輸出的驗(yàn)證值。整個(gè)程序中,測(cè)試腳本來(lái)讀取數(shù)值文件,記載測(cè)試狀態(tài)和信息。這類(lèi)似于表驅(qū)動(dòng)測(cè)試,在表驅(qū)動(dòng)測(cè) 試中,它的測(cè)試用例是包含在數(shù)據(jù)文件而不是在腳本中,對(duì)于數(shù)據(jù)而言,腳本僅僅是一個(gè)“驅(qū)動(dòng)器”,或者是一個(gè)傳送機(jī)構(gòu)。然而,數(shù)據(jù)驅(qū)動(dòng)測(cè)試不同于表驅(qū)動(dòng)測(cè)試,盡管導(dǎo)航數(shù)據(jù)并不包含在表結(jié)構(gòu)中。在數(shù)據(jù)驅(qū)動(dòng)測(cè)試中,數(shù)據(jù)文件中只包含測(cè)試數(shù)據(jù)。
這個(gè)框架意圖減少需要執(zhí)行所有測(cè)試用例所需要的總的測(cè)試腳本數(shù)。數(shù)據(jù)驅(qū)動(dòng)需要很少的代碼來(lái)產(chǎn)生大量的測(cè)試用例,這與表驅(qū)動(dòng)極其類(lèi)似。
??? 5.混合測(cè)試自動(dòng)化(Hybrid Test Automation)框架
??? 最普遍的執(zhí)行框架是上面介紹的所有技術(shù)的一個(gè)結(jié)合,取其長(zhǎng)處,彌補(bǔ)其不足。這個(gè)混合測(cè)試框架是由大部分框架隨著時(shí)間并經(jīng)過(guò)若干項(xiàng)目演化而來(lái)的
轉(zhuǎn)載于:https://www.cnblogs.com/101718qiong/p/7428822.html
總結(jié)
以上是生活随笔為你收集整理的几种典型的软件自动化测试框架的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 14. 错误处理
- 下一篇: java 中文及特殊字符校验