qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          軟件測試中的測試用例復(fù)用技術(shù)

            摘要:軟件測試是確保軟件質(zhì)量的可靠手段,是軟件開發(fā)過程中必不可少的重要環(huán)節(jié)。本文提出了面向復(fù)用的測試用例設(shè)計過程,為測試用例復(fù)用提供了實現(xiàn)策略。測試用例的復(fù)用對于縮短軟件開發(fā)周期和降低軟件開發(fā)成本具有極其重要的意義。

            關(guān)鍵詞:軟件測試;測試用例

            1、引言

            隨著軟件工程領(lǐng)域的拓展,在軟件產(chǎn)業(yè)飛速發(fā)展的今天,軟件測試成為保證軟件質(zhì)量的重要手段。測試用例的選擇對于軟件測試的成敗起著決定性作用,因此如何設(shè)計最少的測試用例實現(xiàn)最大的測試覆蓋成為自動化測試領(lǐng)域中的主要研究對象。測試用例是確定一組最有可能發(fā)現(xiàn)錯誤的測試數(shù)據(jù)和流程,實現(xiàn)系統(tǒng)對某個功能的測試。而測試用例的設(shè)計與測試人員的個人經(jīng)驗息息相關(guān),不同測試人員的個人經(jīng)驗和書寫格式的差異導(dǎo)致了測試的盲目性,以至于產(chǎn)生較高的后期維護費用。測試用例的復(fù)用技術(shù)一方面是為了解決由測試人員經(jīng)驗不足帶來的問題,同時還避免了在設(shè)計測試用例中的重復(fù)勞動,有效地提高了測試效率。

            2、軟件測試

            2.1 軟件測試的定義

            軟件測試(Software Testing)是根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計一批測試用例(包含輸入數(shù)據(jù)及其預(yù)期的輸出結(jié)果),并用這些測試用例去運行程序,以發(fā)現(xiàn)程序錯誤的過程。

            2.2 軟件測試的目的

            Glenford J.Myers就軟件測試的目的提出了以下觀點:

            2.2.1 測試是程序的執(zhí)行過程,目的在于發(fā)現(xiàn)錯誤;

            2.2.2 一個好的測試用例在于能發(fā)現(xiàn)至今為止尚未發(fā)現(xiàn)的錯誤的用例;

            2.2.3 一個成功的測試是指揭示了至今為止尚未發(fā)現(xiàn)的錯誤的測試。

            測試的目的花費最小的代價找出軟件中潛在的各種錯誤和缺陷,通過修正各種錯誤和缺陷來提高軟件質(zhì)量,回避因軟件潛在錯誤和隱患帶來的商業(yè)風(fēng)險。

            3、軟件測試用例的復(fù)用

            3.1 軟件測試用例的復(fù)用

            軟件測試復(fù)用可以理解為在兩次或多次不同的軟件測試過程中重復(fù)使用相同或相近的測試資源來組織測試的過程。軟件測試的復(fù)用主要包括測試流程的復(fù)用、測試方法的復(fù)用和測試用例的復(fù)用。其中測試用例的復(fù)用是測試復(fù)用中的關(guān)鍵技術(shù)。所謂測試用例復(fù)用是指對一個軟件已執(zhí)行的測試用例,將其不同程度地應(yīng)用于該軟件新階段的測試中或其他軟件的測試中??蓮?fù)用的測試用例具有通用性、獨立性、有效性、標(biāo)準(zhǔn)化和完整性的特點。

            3.2 可復(fù)用測試用例的設(shè)計

            測試用例能否成功被復(fù)用很大程度上取決于測試用例的獨立性,即能否獨立地應(yīng)用于不同的應(yīng)用場合和應(yīng)用環(huán)境。在實際應(yīng)用當(dāng)中,很多測試用例之間存在著相互的關(guān)聯(lián)。有的測試用例的運行環(huán)境要取決于另外測試用例的執(zhí)行狀態(tài),當(dāng)它所依賴的環(huán)境變化或失效時,而與之相關(guān)聯(lián)的其他測試用例的復(fù)用屬性也可能隨之消失。那么如何設(shè)計不依靠軟件運行環(huán)境具有較高獨立性、與其他測試用例減少關(guān)聯(lián)且具有統(tǒng)一輸入輸出接口的可復(fù)用的測試用例就成為問題的關(guān)鍵所在。

            測試用例是面向不同應(yīng)用對象的,與被測試軟件具有很高的耦合性。為了使得設(shè)計的測試用例能夠?qū)崿F(xiàn)成功復(fù)用,在測試用例的設(shè)計上采取如下步驟。

            3.2.1 共性分析

            首先應(yīng)該對被測軟件進行共性分析,同一應(yīng)用領(lǐng)域的軟件有相似的需求,分析其諸如工作流程或功能相同等共同特點,并根據(jù)他們的共性挖掘可復(fù)用因素。

            3.2.2 測試用例統(tǒng)一建模

            根據(jù)可復(fù)用因素,設(shè)計合適的測試策略,對測試用例的設(shè)計做出統(tǒng)一的建模組織,設(shè)計統(tǒng)一的結(jié)構(gòu)和輸入輸出接口。

            3.2.3 設(shè)計可復(fù)用的測試用例

            為了盡可能地降低測試用例與被側(cè)軟件的相關(guān)性,在設(shè)計測試用例時應(yīng)該盡量對其進行通用化處理,同時應(yīng)保持測試用例的功能單一性。測試用例和被測軟件的高耦合性決定了測試用例的復(fù)用大多只在同一軟件的回歸測試或版本升級測試中成功實現(xiàn),而很難在不同應(yīng)用領(lǐng)域的軟件測試中使用。

            3.2.4 測試用例的測評

            設(shè)計好測試用例之后,組織測試人員和評審專家根據(jù)功能需求將測試用例應(yīng)用于被測軟件的測試中,確保測試用例的正確性。改變軟件運行環(huán)境或測試數(shù)據(jù)后是否能得出合理的測試結(jié)果,分析異常和邊界情況的測試結(jié)果。

            3.2.5 完善測試用例

            根據(jù)測試結(jié)果分析測試用例是否覆蓋并測試了全部的共性需求,進一步完善或糾正測試用例。

            3.2.6 測試用例入庫

            將通過測評和完善后的可復(fù)用測試用例根據(jù)其屬性和功能分門別類并按照一定的組織結(jié)構(gòu)放入測試用例數(shù)據(jù)庫中。

            3.3 可復(fù)用測試用例的管理

            測試人員要對用例數(shù)據(jù)庫進行統(tǒng)一有效管理,提供測試用例的功能屬性、運行環(huán)境、測試方法和項目來源以供測試人員以后的查詢和使用。管理人員要及時刪除冗余,避免重復(fù)用例出現(xiàn)。隨著軟件技術(shù)的發(fā)展和測試用例數(shù)目的不斷增加,對那些不再具備復(fù)用價值的測試用例移入其他數(shù)據(jù)庫,以便提高搜索和使用效率。

            4、結(jié)語

            軟件測試的復(fù)用是目前測試領(lǐng)域研究的熱點問題,而設(shè)計可復(fù)用的測試用例又是實現(xiàn)測試復(fù)用技術(shù)的關(guān)鍵。本文介紹軟件測試用例復(fù)用的同時,在理論上給出了可復(fù)用測試用例設(shè)計的思想和具體方法。在實踐中,實際存在的問題往往比我們可以預(yù)想到的更多、更復(fù)雜,在不同領(lǐng)域和不同功能的軟件中實現(xiàn)測試復(fù)用的難度更大,需要我們在不??偨Y(jié)經(jīng)驗的基礎(chǔ)上還要靈活運用,合理有效管理,才能使測試復(fù)用技術(shù)進一步發(fā)展,提高測試效率,更好地服務(wù)于軟件產(chǎn)業(yè)。

            原文地址:http://www.xzbu.com/9/view-962311.htm




          posted on 2012-10-23 13:06 順其自然EVO 閱讀(448) 評論(0)  編輯  收藏 所屬分類: 測試學(xué)習(xí)專欄

          <2012年10月>
          30123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 通山县| 桦南县| 南开区| 屏东县| 台中县| 龙里县| 云阳县| 毕节市| 阿拉善盟| 景泰县| 曲阜市| 轮台县| 门源| 嘉义县| 那曲县| 防城港市| 炉霍县| 马关县| 灵宝市| 广丰县| 南皮县| 山丹县| 永善县| 西峡县| 铁岭县| 施甸县| 集贤县| 易门县| 大同市| 赫章县| 阳泉市| 吉安县| 桐梓县| 邢台县| 葫芦岛市| 青田县| 漳浦县| 涟水县| 泰宁县| 漳州市| 繁峙县|