• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種基于模型的Webservice測試方法

    2015-01-01 03:04:48蘭少華顧一禾
    關(guān)鍵詞:用例軟件測試測試方法

    朱 棣 蘭少華 顧一禾

    (南京理工大學(xué)計算機科學(xué)與工程學(xué)院 江蘇 210094)

    0 引言

    伴隨著計算機的普及和網(wǎng)絡(luò)的迅速發(fā)展,計算機應(yīng)用已經(jīng)遍布各個角落,與此同時各行各業(yè)對軟件需求也越來越多,對軟件的健壯性、功能性等提出了更高的標(biāo)準(zhǔn)。計算機系統(tǒng)日益復(fù)雜,軟件規(guī)模也在迅速膨脹,必然使得缺陷出現(xiàn)的可能性大大增加,暴露出的問題自然也逐漸增多,再加上當(dāng)前的軟件開發(fā)和運行環(huán)境的開放性、多變性、動態(tài)性等,使得軟件隱藏了許多未知隱患。例如,阿麗亞娜5型運載火箭發(fā)射失敗,北京奧運會售票官網(wǎng)一度癱瘓都是由軟件故障引起的。

    網(wǎng)絡(luò)的迅速發(fā)展,已經(jīng)成為一個龐大的資源共享庫,每時每刻傳遞著巨大信息量。通過HTML、XML、CGI等WEB技術(shù),越來越多基于網(wǎng)絡(luò)環(huán)境的Web應(yīng)用系統(tǒng)被創(chuàng)建起來。網(wǎng)絡(luò)技術(shù)、分布式計算技術(shù)、面向?qū)ο蠹夹g(shù)三者進(jìn)一步的融合發(fā)展,網(wǎng)絡(luò)應(yīng)用正朝著SOA(Service-Oriented Architecture,面向服務(wù)的體系結(jié)構(gòu))發(fā)展。Webservice正是這種原則的體現(xiàn),它為因特網(wǎng)上的分布式計算提出了一種基于 XML等開發(fā)標(biāo)準(zhǔn)的、松散耦合的、跨語音、跨平臺的新型軟件構(gòu)件。軟件測試一直以來都是保證軟件質(zhì)量的重要手段,對于測試方法、技術(shù)的研究一直都沒有停止過。

    1 基于模型的測試

    軟件測試的目的是用最少的時間和人力找出軟件開發(fā)各個階段潛在的各種錯誤和缺陷。從證實方面說是為了證明軟件不存在錯誤的過程,證偽方面說是發(fā)現(xiàn)軟件中錯誤而執(zhí)行程序的過程。測試對象包括程序、需求分析、概要分析、詳細(xì)分析、交付件、設(shè)計文檔、源代碼等。

    社會對軟件需求越來越多,規(guī)模也越來越大,對軟件安全性、可靠性、實時性等也提出更高的要求。最初軟件測試方法日益不能跟上軟件增長,伴隨著面向模型的開發(fā)技術(shù)發(fā)展以及軟件自動化測試技術(shù)進(jìn)步,基于模型的軟件測試(Mode1-Based Software Testing)技術(shù)得到了廣泛的重視和應(yīng)用。所謂基于模型的軟件測試就是對應(yīng)用程序的某個被測功能或者多個待測試功能進(jìn)行分析,得到應(yīng)用程序的規(guī)格說明書,根據(jù)這個說明書設(shè)計出模型,以模型為依據(jù)根據(jù)某種配對原則生成測試用例,最終對測試結(jié)果進(jìn)行評估。基于模型的軟件測試的出現(xiàn)大大提高了自動化測試技術(shù)的效率和測試水平,提高了測試用例的重復(fù)使用率。目前已經(jīng)出現(xiàn)了多種測試模型:UML模型、有限狀態(tài)機模型、文法模型、馬爾科夫鏈模型等。

    2 Webservice技術(shù)

    Webservice技術(shù)標(biāo)準(zhǔn)復(fù)雜,網(wǎng)絡(luò)的分布性和多變性就決定了傳統(tǒng)的測試方法并不能完全的滿足其測試需求。Webservice作為Web應(yīng)用的一種得到了很多行業(yè)的關(guān)注和支持,如何保證其可靠性成為學(xué)術(shù)界的討論研究焦點。

    Webservice各種角色在交互中必然牽扯到一系列標(biāo)準(zhǔn)和協(xié)議,通常描述 Webservice=SOAP++WSDL+UDDI。其中 SOAP(Simp1e Object Access Protoco1)協(xié)議是Webservice的主體,它通過HTTP或者SMTP等應(yīng)用層協(xié)議進(jìn)行通訊,自身使用XML文件來描述程序的函數(shù)方法和參數(shù)信息,從而完成不同主機的異構(gòu)系統(tǒng)間的計算服務(wù)處理。WSDL(Web Service Description Language)也是一個XML文檔,它通過HTTP向公眾發(fā)布,公告客戶端程序關(guān)于某個具體的Webservice服務(wù)的URL信息、方法的命名,參數(shù),返回值等。UDDI是一種目錄服務(wù),它集描述(Universa1 Description)、檢索(Discovery)、集成(Integration)為一體,通過這個目錄對Webservice進(jìn)行注冊和查找,在互聯(lián)網(wǎng)上發(fā)布自己所提供的服務(wù)。

    圖1 Webservice體系結(jié)構(gòu)模型

    3 樹模型測試方案

    樹型結(jié)構(gòu)是一類重要的非線性數(shù)據(jù)結(jié)構(gòu),它是以分支關(guān)系定義的層次結(jié)構(gòu),不僅在計算機領(lǐng)域,在其他非計算機領(lǐng)域同樣得到了廣泛的應(yīng)用。

    本文采用ewind DesignSpace工具進(jìn)行建模并生成用例,它是一個 MBT工具,并應(yīng)用算法固化的測試設(shè)計方法,其具有與模型分離的生成策略控制能力,適配敏捷測試的能力,算法固化經(jīng)典的測試設(shè)計方法,自動根據(jù)模型生成用例包括文本用例和自動化用例。

    圖2 ewind DesignSpace用例設(shè)計流程圖

    分類樹是某種業(yè)務(wù)行為的因子的約束組合,Root節(jié)點下分類節(jié)點是相互組合的,每個分類節(jié)點下類節(jié)點(葉子)是相互互斥的,即一個用例中一個分類節(jié)點下面的取值只會出現(xiàn)一個,類節(jié)點下面還需考慮不同分類,則需在類節(jié)點下繼續(xù)增加該類取值的不同分類。流程圖和分類樹設(shè)計完成后,定義用例生成策略,將確定同一個模型生成用例的覆蓋深度。樹的葉子節(jié)點便是用例的影響因子,依據(jù)語句控制和生成策略對因子進(jìn)行組合便生成測試用例,用例的生成基于黑盒測試方法中的等價類劃分。圖3為用于生成用例的分類樹,虛線表示省略,根據(jù)實際需求可能有多個分類點。

    圖3 用例生成分類樹

    4 實施方案

    SoapUI是一個開源的Webservice測試工具,一個完整的自動化測試解決方案,通過soap/http的檢測、調(diào)用,對Webservice進(jìn)行功能測試、負(fù)載測試、可靠性測試等。相比較其他工具,SoapUI提供了較為領(lǐng)先的技術(shù)以及對標(biāo)準(zhǔn)的良好支持,一直都是從業(yè)者的首選工具。

    選取網(wǎng)上提供火車時刻表服務(wù)的WSDL進(jìn)行測試,結(jié)果如下表。

    表1 測試數(shù)據(jù)

    根據(jù)以上數(shù)據(jù)可以明顯的看出用例的覆蓋率大多維持在80%上下,可以滿足正常的測試需求。實際測試工作中,并不要求也沒有明確的說明用例覆蓋率一定要達(dá)到100%,而是根據(jù)具體的軟件需求和實際出發(fā)來確定覆蓋率。實際上包括我實習(xí)的一段時間親身經(jīng)歷,幾乎都將用例覆蓋率保持在80%左右。

    5 總結(jié)

    在整個軟件開發(fā)進(jìn)程中,測試被視為艱苦而又繁瑣的工作。其工作內(nèi)容周而復(fù)始反反復(fù)復(fù),倘若一個函數(shù)參數(shù)改變都要重新測試。測試工作一直占據(jù)軟件開發(fā)總量40%以上甚至更高,其重要性可見一斑。國內(nèi)針對Webservice測試方法和技術(shù)已經(jīng)進(jìn)行了很多研究,也取得了一定的成果。其研究內(nèi)容主要基于WSDL規(guī)格說明,集中在測試案例產(chǎn)生、變異測試、自動化測試、合約測試、劃分測試等方面。Webservice測試還是一個嶄新的研究領(lǐng)域,雖然已經(jīng)有了部分理論和工具的支撐,也得到了良好的應(yīng)用,但大多Webservice測試問題還未涉足。

    [1]錢樂秋,趙文耘,牛軍鈺.軟件工程[M].第二版.北京:清華大學(xué)出版社.2013.

    [2]齊治昌,譚慶平,寧洪.軟件工程[M].北京:高等教育出版社.2001.

    [3]楊芙清,呂建.淺論軟件技術(shù)發(fā)展[J].電子學(xué)報.2002.

    [4]Ron Patton.Software Testing[M].Sams Publishing.Second Edition.2005.

    [5]傅兵.軟件測試技術(shù)教程[M].北京:清華大學(xué)出版社.2014.

    [6]Hasan J.The Web Services Description Language[J].Expert Service Oriented Architecture in C.2004.

    [7]Liu C K,Booth D.Web services description language(WSDL)version 2.0 part 0[J].1.1 in W3C Note 15 March 2001,W3C,http://www.w3.org/TR/wsdl.2007.

    [8]Luo Zuomin,Zhu Yan.Web ,rvice Testing Tool SoapUI and Its Analysis,Computer Applications and Software.2010.

    [9]Kankanamge C.Web services testing with soapUI[M].Packt Publishing Ltd.2012.

    [10]白曉穎,趙沖沖,戴桂蘭.Web服務(wù)測試研究[J].計算機科學(xué).2006.

    猜你喜歡
    用例軟件測試測試方法
    基于泊松對相關(guān)的偽隨機數(shù)發(fā)生器的統(tǒng)計測試方法
    UML用例模型中依賴關(guān)系的比較與分析
    基于OBE的軟件測試課程教學(xué)改革探索
    計算機教育(2020年5期)2020-07-24 08:53:20
    基于云計算的軟件自動化測試方法
    電子制作(2019年16期)2019-09-27 09:34:56
    DLD-100C型雷達(dá)測試方法和應(yīng)用
    電子制作(2019年15期)2019-08-27 01:12:02
    聯(lián)鎖軟件詳細(xì)設(shè)計的測試需求分析和用例編寫
    從出土文獻(xiàn)用例看王氏父子校讀古書的得失
    EXCEL和VBA實現(xiàn)軟件測試記錄管理
    電子制作(2018年16期)2018-09-26 03:27:18
    關(guān)于軟件測試技術(shù)應(yīng)用與發(fā)展趨勢研究
    電子測試(2017年15期)2017-12-18 07:19:20
    軟件測試工程化模型及應(yīng)用研究
    安义县| 右玉县| 喀喇沁旗| 历史| 信阳市| 乌拉特前旗| 科技| 公主岭市| 桓仁| 兴仁县| 汶上县| 嘉黎县| 宁安市| 武安市| 余干县| 乳源| 嘉义市| 金华市| 黄浦区| 固镇县| 麻江县| 怀集县| 星子县| 高州市| 页游| 萍乡市| 华容县| 革吉县| 德州市| 边坝县| 岑溪市| 宜宾市| 紫阳县| 建宁县| 庆城县| 临沂市| 绵竹市| 灵石县| 清徐县| 福州市| 新化县|