




已閱讀5頁(yè),還剩66頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
(計(jì)算機(jī)軟件與理論專(zhuān)業(yè)論文)web應(yīng)用模型的形式化與優(yōu)化及其可視化方法研究.pdf.pdf 免費(fèi)下載
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
上海大學(xué)碩上學(xué)位論文 摘要 w e b 應(yīng)用的出現(xiàn)與盛行已將軟件產(chǎn)業(yè)悄然帶入規(guī)?;?、復(fù)雜化的時(shí)代,提 高其檢測(cè)方法的自動(dòng)化程度是當(dāng)務(wù)之急。因此,我們采用基于模型的測(cè)試方法, 以w e b 應(yīng)用模型作為測(cè)試用例的來(lái)源。另外,為了使該模型與用戶(hù)需求保持一 致,必須對(duì)其應(yīng)滿(mǎn)足的各種性質(zhì)進(jìn)行驗(yàn)證。由此可知,模型構(gòu)建是重要問(wèn)題。 u m l 是理想的需求與設(shè)計(jì)模型語(yǔ)言,而模型檢驗(yàn)與測(cè)試自動(dòng)化要求模型用 統(tǒng)一的形式化語(yǔ)言描述。鑒于大多數(shù)模型檢驗(yàn)工具以f s m 模型作為輸入,本文 提出了一種將u m l 模型形式化為f s m 模型的方法,使之滿(mǎn)足檢測(cè)過(guò)程的需要。 由于狀態(tài)圖代表系統(tǒng)行為的最小單位,本文從它們的形式化著手。另外,順序 圖也是描述系統(tǒng)行為的常用模型,本文亦對(duì)其進(jìn)行了研究并給出相應(yīng)的形式化 方法,不但服務(wù)于檢測(cè)過(guò)程,也可用于后續(xù)歸約過(guò)程。 高復(fù)雜度的w e b 應(yīng)用軟件將導(dǎo)致大規(guī)模的f s m 模型,并可能引發(fā)狀態(tài)爆 炸。為了解決這個(gè)問(wèn)題,我們利用歸約指示及本文提出的一系列相關(guān)算法,對(duì) 前期模型形式化后獲得的系統(tǒng)f s m 模型進(jìn)行歸約優(yōu)化,產(chǎn)生只描述用戶(hù)所要求 測(cè)試的功能的f s m 模型。該方法主要可分為兩步,首先生成形式化的歸約指示, 將順序圖模型轉(zhuǎn)換為f s m 模型,然后以該形式化的歸約指示為指導(dǎo),對(duì)系統(tǒng) f s m 模型執(zhí)行歸約操作,達(dá)到優(yōu)化的目的。 f s m 是我們研究工作中系統(tǒng)行為的重要描述形式,它為各環(huán)節(jié)傳遞信息, 但計(jì)算機(jī)處理能力的局限性迫使模型只能以文本為載體。為了直觀(guān)地了解其結(jié) 構(gòu),本文給出了一種層次f s m 模型的可視化方法。它首先讀取模型文本,并以 層次化的數(shù)據(jù)結(jié)構(gòu)進(jìn)行存儲(chǔ),然后根據(jù)用戶(hù)要求查看的復(fù)合結(jié)點(diǎn)的對(duì)應(yīng)關(guān)系, 對(duì)相應(yīng)f s m 模型進(jìn)行可視化。 為了支持本文提出的上述一系列方法,我們開(kāi)發(fā)了相應(yīng)工具原型,它利用 x m i 文件作為u m l 圖形式模型的對(duì)應(yīng)文本,并使用自定義的x m l 文件記錄 f s m 模型。通過(guò)本文給出的讀取算法,該工具先對(duì)文本中的模型信息進(jìn)行分析, 并以某種數(shù)據(jù)結(jié)構(gòu)存儲(chǔ),然后根據(jù)用戶(hù)需求,結(jié)合論文中提出的方法對(duì)u m l 模型進(jìn)行形式化并對(duì)f s m 模型進(jìn)行優(yōu)化與可視化。 關(guān)鍵詞:u m l ,f s m ,模型形式化,模型歸約,模型可視化 v 上海人學(xué)碩上學(xué)位論文 a bs t r a c t w i t ht h ee m e r g e n c ea n dp o p u l a r i t yo fw e ba p p l i c a t i o n s ,t e s t i n gr e q u i r e sf o rah i g h e r a u t o m a t i o nl e v e lb e c a u s e o ft h e i rl a r g es c a l ea n dh i g hc o m p l e x i t y t ot h i se n d ,w eu s e m o d e l - b a s e dt e s t i n gw h i c ht a k e st h em o d e l so fw e ba p p l i c a t i o n sa st h eo r i g i n so ft e s tc a s e s f u r t h e r m o r e ,i no r d e rt ov e r i f yt h a tt h e s em o d e l sa r ec o n s i s t e n t 誦t l lu s e r s r e q u i r e m e n t s ,w ew i l l c h e c ki ft h e ys a t i s f yt h es p e c i f i e dp r o p e r t i e s t h e r e f o r e ,c o n s t r u c t i o no fm o d e l si sac r i t i c a lp a r t o ft h ep r o b l e m u m li sa ni d e a lm o d e l i n gl a n g u a g ef o rr e q u i r e m e n t sp r e s e n t a t i o na n dd e s i g np r o c e s s , h o w e v e r , m o d e lc h e c k i n ga n da u t o m a t i ct e s t i n gc a no n l yb ei m p l e m e n t e d 、璣t l lm o d e l s r e p r e s e n t e di nu n i f i e df o r m a ln o t a t i o n s c o n s i d e r i n gt h a tm o d e lc h e c k i n gt o o l su s u a l l yt a k e f s m - b a s e dm o d e la sm e i rs p e c i f i e di n p u t , w ep r o p o s eat r a n s f o r m a t i o nm e t h o df r o mu m l m o d e l st of s m m o d e l s ,m e e t i n gt h ed e m a n d sf o rd e t e c t i o nw o r k s s i n c eu m l s t a t ed i a g r a m sa r e c o n s i d e r e dt ob et h em i n i m a lu n i tr e p r e s e n t i n gb e h a v i o r s 。0 1 1 1 w o r ks t a r t e d 、) i ,i mf o r m a l i z a t i o n so f t h e s ed i a g r a m s b e s i d e s ,s e q u e n c ed i a g r a m sa r ea l s oo f t e nu s e dw h e nd e s c r i b i n gt h eb e h a v i o ro f t h es y s t e m ,a na p p r o a c ht ot r a n s f o r m i n gt h e mi n t of s mm o d e l si sp r e s e n t e d ,n o to n l yf a c i l i t a t i n g a u t o m a t i ct e s tc a s eg e n e r a t i o na n dm o d e lc h e c k i n g ,b u ta l s ot h el a t e rp r o c e s so fr e d u c t i o n f s mm o d e l so fw e ba p p l i c a t i o n sw o u l db e c o m el a r g e ra n dl a r g e ra st h ec o m p l e x i t yo f s o f i w a r ei n c r e a s e s ,l e a d i n gt ot h ep r o b l e mo fs t a t ee x p l o s i o n t os o l v et h i s ,w en s er e d u c t i o n d i r e c t i v e sa n ds e v e r a lr e l a t i v ea l g o r i t h m sp r o p o s e db yt h i sp a p e rt or e d u c et h eo r i g i n a lf s m o b t a i n e di nt h ee a r l i e rp r o c e s so fm o d e lt r a n s f o r m a t i o n r e s u l t i n gi nm u c hs m a l l e ro n e sw i m f u n c t i o n sw ew o u l dl i k et o t e s ts p e c i f i c a l l y i tc a l lb ed i v i d e di n t ot w op a r t s :g e n e r a t i o no f f o r m a l i z e dr e d u c t i o nd i r e c t i v e si nf s mm o d e l st r a n s f o r m e df r o ms e q u e n c ed i a g r a m sa n d r e d u c t i o no fo r i g i n a lf s mm o d e l si nt h eg u i d a n c eo ft h eo b t a i n e dr e d u c t i o nd i r e c t i v e s , r e a c h i n g t h eg o a lo f m o d e lo p t i m i z a t i o n f s mi sa ni m p o r t a n tr e p r e s e n t a t i o nf o rd e s c r i b i n gb e h a v i o ro ft h es y s t e mi no u rr e s e a r c h w o r k s ;i tt r a n s f e r si n f o r m a t i o nb e t w e e nd i f f e r e n tp h a s e s b u td u et oc o m p u t e r s l i m i t e dc a p a b i l i t y o ni n f o r m a t i o np r o c e s s i n g ,w ec o u l do n l yu s et e x t u a l p r e s e n t a t i o n t od i r e c t l y s e et h e a r c h i t e c t u r e so ff s mm o d e l s ,w e v ef i g u r e do u tam e t h o df o rt h ev i s u a l i z a t i o no ft h e m w e f i r s t l ya n a l y z et h ed o c u m e n t so ft h eh i e r a r c h i c a lf s mm o d e l ,a n dt h e ns t o r et h ei n f o r m a t i o n e x t r a c t e df r o mt h e s ed o c u m e n t si nah i e r a r c h i c a ld a t as t r u c t u r e n e x t ,v i s u a l i z i n gs p e c i f i e df s m m o d e la c c o r d i n gt ot h ec o m p o s i t es t a t es e l e c t e db yu s e r sa n di t sc o r r e s p o n d i n gf s mm o d e l f o rt h ep u r p o s eo fs u p p o r t i n gt h em e t h o d sp r o p o s e db yt h i sa r t i c l e ,w ed e v e l o pat o o l p r o t o t y p ew h i c ht a k e sx m if i l e sa st e x t u a lp r e s e n t a t i o nf o ru m lm o d e l sa n ds e l f - d e f m e dx m l f i l e sf o rf s mm o d e l s i t f i r s t l ya n a l y z e st h ei n p u tf i l e ,e x t r a c t i n g i n f o r m a t i o no fi t s c o r r e s p o n d i n gm o d e lw h i c hw i l lb es t o r e di nac e r t a i nd a t as t r u c t u r e a n dt h e n ,i ti m p l e m e n t s f o r m a l i z a t i o no fu m lm o d e l s ,r e d u c t i o na n dv i s u a l i z a t i o no ff s mm o d e l s 、) l ,i ma l g o r i t h m sg i v e n i nt h i st h e s i sa c c o r d i n gt ou s e r s r e q u i r e m e n t s k e y w o r d s :u m l ,f s m ,m o d e lf o r m a l i z a t i o n ,m o d e lr e d u c t i o n ,m o d e lv i s u a l i z a t i o n v l 上海大學(xué)碩士學(xué)位論文 原創(chuàng)性聲明 本人聲明:所呈交的論文是本人在導(dǎo)師指導(dǎo)下進(jìn)行的研究工作。 除了文中特別加以標(biāo)注和致謝的地方外,論文中不包含其他人已發(fā) 表或撰寫(xiě)過(guò)的研究成果。參與同一工作的其他同志對(duì)本研究所做的 任何貢獻(xiàn)均已在論文中作了明確的說(shuō)明并表示了謝意。 簽名: _ 一日期: 本論文使用授權(quán)說(shuō)明 本人完全了解上海大學(xué)有關(guān)保留、使用學(xué)位論文的規(guī)定,即: 學(xué)校有權(quán)保留論文及送交論文復(fù)印件,允許論文被查閱和借閱;學(xué) ??梢怨颊撐牡娜炕虿糠謨?nèi)容。 ( 保密的論文在解密后應(yīng)遵守此規(guī)定) 簽名:蘭翌導(dǎo)師簽名: 1 1 日期:霉,蘭:2 f 上海大學(xué)碩士學(xué)位論文 1 1 課題來(lái)源 第一章緒論 本課題來(lái)源于國(guó)家高技術(shù)研究發(fā)展計(jì)劃( 8 6 3 計(jì)劃) ( 項(xiàng)目編號(hào): 2 0 0 7 a a 0 1 2 1 4 4 ) 和國(guó)家自然科學(xué)基金項(xiàng)目( 批準(zhǔn)號(hào):6 0 6 7 3 1 1 5 ) 。 1 2 課題研究的目的和意義 2 0 世紀(jì)上演了兩場(chǎng)舉世矚目的社會(huì)變革,堪稱(chēng)人類(lèi)文明史上第三次及第四 次科技革命的主要標(biāo)志,即電子計(jì)算機(jī)與互聯(lián)網(wǎng)的發(fā)明與廣泛應(yīng)用。生產(chǎn)自動(dòng) 化、辦公自動(dòng)化與家庭生活自動(dòng)化都預(yù)示著我們將進(jìn)入一個(gè)全新的自動(dòng)化時(shí)代, 而隨著個(gè)人計(jì)算機(jī)的普及,每個(gè)普通公民都能享受到科技帶給他們的便利與改 變,無(wú)論是工作形式的改變、工作質(zhì)量的提高、知識(shí)與信息的有效管理及獲取 還是新鮮的娛樂(lè)模式,都深刻地影響著每個(gè)人的生活方式。網(wǎng)絡(luò)的出現(xiàn)與流行 更是將這一發(fā)明的空前與偉大性推向極致。一臺(tái)計(jì)算機(jī)與一根網(wǎng)線(xiàn)便能將自己 與世界連接,你可以在這個(gè)取之不盡用之不竭的寶庫(kù)中找到任何想要的資源與 服務(wù),讓你無(wú)時(shí)無(wú)刻感受到它的存在與萬(wàn)能。 計(jì)算機(jī)硬件只為上述種種服務(wù)提供運(yùn)行平臺(tái),真正實(shí)現(xiàn)其功能的是建立于 平臺(tái)之上的軟件系統(tǒng),這些軟件系統(tǒng)才是計(jì)算機(jī)的靈魂所在。所以,與其說(shuō)計(jì) 算機(jī)無(wú)孑l 不入地滲透于社會(huì)各領(lǐng)域中,倒不如說(shuō)軟件產(chǎn)品已成為與我們息息相 關(guān)的生活必備,其質(zhì)量好壞已被越來(lái)越多的人所關(guān)注,尤其是關(guān)鍵領(lǐng)域內(nèi)的軟 件產(chǎn)品,稍有紕漏都有可能造成極其嚴(yán)重的后果。據(jù)美國(guó)國(guó)家標(biāo)準(zhǔn)和技術(shù)研究 院的報(bào)告顯示,美國(guó)大型專(zhuān)用軟件開(kāi)發(fā)的失敗率高達(dá)7 0 ,美國(guó)經(jīng)濟(jì)因軟件錯(cuò) 誤,每年損失高達(dá)5 9 5 億美元,中國(guó)軟件的市場(chǎng)應(yīng)用狀況也如出一轍。如果企 業(yè)在使用軟件系統(tǒng)之前采用相關(guān)的質(zhì)量保證手段,則可以有效避免各種風(fēng)險(xiǎn)。 模型檢驗(yàn)與測(cè)試則分別是最重要的檢測(cè)方法之一【1 1 ,測(cè)試更是成為軟件開(kāi)發(fā)過(guò) 程中必不可少的環(huán)節(jié)。有數(shù)據(jù)表明,國(guó)外優(yōu)秀的軟件開(kāi)發(fā)機(jī)構(gòu)把4 0 的工作量 上海人學(xué)碩士學(xué)位論文 花在軟件測(cè)試上,軟件測(cè)試費(fèi)用則占軟件開(kāi)發(fā)總費(fèi)用的3 0 0 0 - - - 5 0 ,足見(jiàn)軟件 測(cè)試舉足輕重的地位,在如此大量投入的形勢(shì)面前,其效率自然而然地被業(yè)界 視為焦點(diǎn)問(wèn)題。 手工測(cè)試是軟件測(cè)試的最初形態(tài),至今仍占據(jù)著主導(dǎo)地位。由于自動(dòng)化測(cè) 試技術(shù)尚不成熟,大部分公司或企業(yè)仍舊依靠大量人力完成軟件產(chǎn)品的測(cè)試任 務(wù)。但是,用戶(hù)不斷增長(zhǎng)的需求使軟件朝著復(fù)雜化方向發(fā)展,規(guī)模日益擴(kuò)大, 手工技術(shù)已很難滿(mǎn)足測(cè)試要求。另外,網(wǎng)絡(luò)化時(shí)代的到來(lái)推動(dòng)著一種新型軟件 - w 曲應(yīng)用軟件以驚人的速度向前發(fā)展,并開(kāi)始涉及與其相關(guān)的各個(gè)層面。 較之傳統(tǒng)軟件,w e b 應(yīng)用軟件呈現(xiàn)出一些新的特點(diǎn): 異構(gòu)性,各實(shí)體運(yùn)行于不同的軟硬件平臺(tái),使用不同的編程語(yǔ)言,并與其 它跨組織、跨平臺(tái)的構(gòu)件、中間件及服務(wù)器等進(jìn)行交互; 動(dòng)態(tài)性,一方面技術(shù)、用戶(hù)需求與構(gòu)件版本都在不斷更新,另一方面其狀 態(tài)轉(zhuǎn)換路徑由用戶(hù)輸入、用戶(hù)狀態(tài)數(shù)據(jù)及服務(wù)器狀態(tài)數(shù)據(jù)共同決定。 傳統(tǒng)的取決于測(cè)試者的測(cè)試手段并未考慮針對(duì)以上特點(diǎn)的應(yīng)對(duì)措施,若盲 目用于w e b 應(yīng)用軟件的測(cè)試無(wú)疑將是徒勞。另外,迫于競(jìng)爭(zhēng)壓力,大部分公司 或企業(yè)更加青睞于快速開(kāi)發(fā),希望最大限度地縮短生產(chǎn)周期,使產(chǎn)品盡早投入 市場(chǎng)。而自動(dòng)化程度更高的方法可將單調(diào)繁冗的工作交給計(jì)算機(jī),其高效率與 高正確率優(yōu)勢(shì),實(shí)為人工所不及。綜上所述,工業(yè)界期望的是一種自動(dòng)化程度 高、周期短,且對(duì)有如w 曲應(yīng)用的復(fù)雜大型軟件亦有效的測(cè)試方法。 基于模型的測(cè)試方法讓我們看到了曙光。測(cè)試的主要工作是測(cè)試用例的產(chǎn) 生,根據(jù)這些測(cè)試用例對(duì)被測(cè)對(duì)象進(jìn)行輸入操作,并在其實(shí)際相應(yīng)輸出與預(yù)定 輸出的比較過(guò)程中發(fā)現(xiàn)可能存在的錯(cuò)誤,達(dá)到提高軟件質(zhì)量的目的。而基于模 型的測(cè)試方法使自動(dòng)產(chǎn)生測(cè)試用例成為了可能,它的信息來(lái)源是需求分析與設(shè) 計(jì)階段給出的軟件結(jié)構(gòu)與行為模型。由于需求與設(shè)計(jì)模型在軟件開(kāi)發(fā)的初級(jí)階 段就已按照用戶(hù)需求創(chuàng)建【2 1 ,測(cè)試用例的生成可與系統(tǒng)實(shí)現(xiàn)并行完成,不必等 到編程結(jié)束再由代碼產(chǎn)生測(cè)試用例,從而節(jié)省了大量串行模式白白浪費(fèi)的時(shí)間。 另外,模型及由其產(chǎn)生的測(cè)試用例具有平臺(tái)無(wú)關(guān)性與復(fù)用性,當(dāng)規(guī)格說(shuō)明發(fā)生 變化時(shí),改變模型相對(duì)簡(jiǎn)單很多【3 1 ,當(dāng)平臺(tái)發(fā)生變化時(shí),只需對(duì)測(cè)試執(zhí)行環(huán)境 2 上海人學(xué)碩士學(xué)位論文 重新進(jìn)行動(dòng)態(tài)配置,自動(dòng)產(chǎn)生實(shí)例化的可執(zhí)行測(cè)試包。這一特性大大降低了w e b 應(yīng)用的動(dòng)態(tài)性和異構(gòu)性帶來(lái)的測(cè)試復(fù)雜度。因此,基于模型的測(cè)試方法對(duì)于大 型軟件包括w e b 應(yīng)用軟件的測(cè)試極具優(yōu)勢(shì),是本課題組選定的研究方向,也是 論文的研究背景。 測(cè)試模型的構(gòu)造是基于模型的測(cè)試方法的關(guān)鍵。在各種建模語(yǔ)言中,u m l 憑借其簡(jiǎn)單性與易用性被業(yè)界廣泛接受與應(yīng)用,它可以幫助用戶(hù)從各種角度分 析待開(kāi)發(fā)的系統(tǒng)。作為一種可視化的語(yǔ)言,u m l 能清楚地顯示系統(tǒng)的結(jié)構(gòu)與功 能,促進(jìn)了設(shè)計(jì)人員、建模人員、開(kāi)發(fā)人員和用戶(hù)之間的交流。另外,在u m l 的發(fā)展歷程中,業(yè)界設(shè)計(jì)并實(shí)現(xiàn)了許多與之相關(guān)的支持工具,以幫助用戶(hù)更方 便地利用u m l 進(jìn)行建模。但是,u m l 圖中某些標(biāo)記及某些圖本身都無(wú)法提供 精確的語(yǔ)義,盡管它擁有上述眾多優(yōu)點(diǎn),其半形式化特性卻使之難以承受?chē)?yán)格 推理,缺乏可執(zhí)行性,被阻隔于自動(dòng)測(cè)試之多, b t 4 1 。而且,u m l 語(yǔ)言可從多個(gè)方 面為描述對(duì)象進(jìn)行建模,所涉及的圖形種類(lèi)繁多,在設(shè)計(jì)階段將得到一個(gè)反映 目標(biāo)w e b 應(yīng)用各種特性的圖形集。這樣雖然為用戶(hù)提供了多重視角,使得模型 更為豐富與全面,但也給測(cè)試工作帶來(lái)了麻煩,需要為各種u m l 圖形確定其 對(duì)應(yīng)生成測(cè)試用例的方法,既犧牲了效率也不利于測(cè)試過(guò)程中各種圖形之間信 息的互補(bǔ)與組合。 鑒于此,我們可以使u m l 模型適應(yīng)自動(dòng)產(chǎn)生測(cè)試用例的要求,這便是要 確定其中哪些圖形對(duì)產(chǎn)生測(cè)試用例有效,并將它們統(tǒng)一形式化并轉(zhuǎn)化成為最有 利于測(cè)試用例自動(dòng)生成的模型。這樣,只需分別為各圖形給定一個(gè)形式化為目 標(biāo)模型的方法,便可共享針對(duì)目標(biāo)模型的測(cè)試用例自動(dòng)生成方法、測(cè)試用例集 的優(yōu)化方法、測(cè)試用例覆蓋度與結(jié)果評(píng)估方法等。 f s m 模型即為本課題組選用的目標(biāo)模型。首先,f s m 是一種形式化的建模 語(yǔ)言,它能精確且無(wú)二義地描述軟件應(yīng)提供的服務(wù)及其功能。其次,f s m 模型 的結(jié)構(gòu)與描述方法決定了其高度自動(dòng)化的操作特性【5 1 ,深厚的相關(guān)理論基礎(chǔ)大 大有助于測(cè)試并使之更為有效。并且,除了傳統(tǒng)軟件,f s m 亦可用以為w e b 應(yīng)用的行為進(jìn)行建模,而測(cè)試用例則通過(guò)遍歷其相應(yīng)f s m 模型的路徑自動(dòng)產(chǎn) 生,每一條相異于其它的路徑便可視作一個(gè)測(cè)試用例【6 】。另外,f s m 模型的可 3 上海大學(xué)碩士學(xué)位論文 視化圖形可直觀(guān)地展現(xiàn)每個(gè)測(cè)試用例的路徑走向,因?yàn)榛跔顟B(tài)的規(guī)格說(shuō)明語(yǔ) 言本身具有圖形形式,轉(zhuǎn)化成為圖形是可行的,也并不困難【5 】。最后,作為保 證軟件質(zhì)量的手段之一,模型檢驗(yàn)用以驗(yàn)證設(shè)計(jì)階段的模型是否滿(mǎn)足用戶(hù)所要 求的若干性質(zhì),尤其對(duì)于基于模型的測(cè)試是十分有必要的前期工作,因?yàn)槲唇?jīng) 驗(yàn)證的模型無(wú)法保證由其產(chǎn)生的測(cè)試用例的正確性,且模型檢驗(yàn)可以和已有的 各種測(cè)試方法結(jié)合以實(shí)現(xiàn)測(cè)試用例生成的自動(dòng)化,它產(chǎn)生的反例可以被解釋為 測(cè)試用例【7 】。模型檢驗(yàn)工具的輸入模型通常為f s m 模型,此種轉(zhuǎn)換也可實(shí)現(xiàn)模 型檢測(cè)的模型源獲取及自動(dòng)化。但是,與許多形式化語(yǔ)言一樣,正是f s m 模型 與數(shù)學(xué)的緊密聯(lián)系,使之需要用戶(hù)掌握豐富而扎實(shí)的相關(guān)知識(shí),于是,造成了 學(xué)術(shù)界廣泛使用但工業(yè)界少人問(wèn)津的局面。因此,先用工業(yè)界統(tǒng)一標(biāo)準(zhǔn)的建模 語(yǔ)言u(píng) m l 描述系統(tǒng)框架與功能,再將它形式化成為f s m 模型便能夠同時(shí)享有 兩種模型特性帶給我們的便利:u m l 建模語(yǔ)言的簡(jiǎn)單易懂與f s m 建模語(yǔ)言的 精確可推導(dǎo),這是本文將研究的主要問(wèn)題之一。 盡管我們可以通過(guò)模型形式化獲得的統(tǒng)一的f s m 模型進(jìn)行測(cè)試用例的自 動(dòng)生成與模型檢驗(yàn)工作,感受到它許多方面的優(yōu)勢(shì),但是,正如文章開(kāi)頭說(shuō)到 的那樣,包括w e b 應(yīng)用在內(nèi)的軟件產(chǎn)品呈現(xiàn)出擴(kuò)大化復(fù)雜化的趨勢(shì),待檢測(cè)系 統(tǒng)的規(guī)模之大常常使其對(duì)應(yīng)的f s m 模型包含過(guò)多信息,面臨狀態(tài)爆炸的窘境, 可能會(huì)產(chǎn)生難以完成的測(cè)試量【8 】和模型檢測(cè)工作。所以,對(duì)于大型軟件產(chǎn)品, 尤其是w e b 應(yīng)用軟件的f s m 模型的歸約優(yōu)化將大大改善這一狀況,刪去其中 無(wú)關(guān)于指定范圍內(nèi)的各項(xiàng)元素,減少人力物力,使測(cè)試與模型檢驗(yàn)工作只針對(duì) 用戶(hù)要求檢測(cè)的系統(tǒng)功能而展開(kāi)。這也是本文將要研究的主要問(wèn)題之一。 無(wú)論是模型形式化、模型歸約、測(cè)試用例的自動(dòng)生成還是模型檢驗(yàn),它們 涉及到的f s m 模型信息均以文本文件作為載體進(jìn)行傳遞,因?yàn)橐詅 s m 模型為 輸入的功能模塊只能從文本中抽取必要的信息。測(cè)試者或用戶(hù)若想了解檢測(cè)空 間內(nèi)的狀態(tài)或路徑,需要花費(fèi)相當(dāng)長(zhǎng)的時(shí)問(wèn)熟悉語(yǔ)法規(guī)則、閱讀文檔,且由于 信息量過(guò)大,只能在腦中獲得一個(gè)模糊的印象。上文提及,f s m 模型具有圖形 式的表示形式,且測(cè)試用例是f s m 模型上的路徑,為了方便用戶(hù)更快、更直觀(guān) 地掌握測(cè)試信息,必須充分利用人類(lèi)對(duì)圖形的敏感與理解能力,實(shí)現(xiàn)f s m 文本 4 上海大學(xué)碩士學(xué)位論文 的可視化。由于在模型形式化過(guò)程中,需要借用層次有限狀態(tài)機(jī)模型以存儲(chǔ)中 間結(jié)果,我們對(duì)可視化對(duì)象的范圍進(jìn)行進(jìn)一步延展,使其既能作用于無(wú)層次信 息的f s m 模型的文檔,也可作用于由有限個(gè)附有層次信息的f s m 模型組成的 層次有限狀態(tài)機(jī)模型的文檔。 1 3 國(guó)內(nèi)外研究概況 1 3 1 國(guó)外研究概況 測(cè)試自動(dòng)化已成為軟件工程領(lǐng)域內(nèi)的一個(gè)研究熱點(diǎn),它簡(jiǎn)化了軟件開(kāi)發(fā)過(guò) 程中占據(jù)時(shí)間最長(zhǎng)的測(cè)試環(huán)節(jié)。但現(xiàn)在大多數(shù)技術(shù)都采用“捕捉回放”機(jī)制, 這些技術(shù)需要耗費(fèi)大量的時(shí)間與人力以記錄測(cè)試場(chǎng)景,且當(dāng)系統(tǒng)用戶(hù)界面或功 能設(shè)計(jì)稍有變動(dòng)時(shí),所有的測(cè)試工作又將重新進(jìn)行?;诖朔N機(jī)制開(kāi)發(fā)的工具 必須依靠人的參與才能設(shè)計(jì)并產(chǎn)生測(cè)試用例,且無(wú)法提供關(guān)于測(cè)試用例覆蓋度 的任何信息。而由于w e b 應(yīng)用的大規(guī)模與復(fù)雜性要求針對(duì)其設(shè)計(jì)的測(cè)試對(duì)自動(dòng) 化程度要求更高,這類(lèi)工具則更少。現(xiàn)有的大部分工具【9 】不支持w e b 應(yīng)用的功 能測(cè)試,例如用于驗(yàn)證w 曲應(yīng)用軟件鏈接信息的l i n kc h e c k s ;h t m l v a l i d a t o r s , 依照用戶(hù)指定的某種標(biāo)準(zhǔn)h t m l 格式的語(yǔ)法對(duì)w e b 應(yīng)用軟件代碼進(jìn)行檢查; w e bs i t es e c u r i t yt e s tt o o l s ,對(duì)于w e b 應(yīng)用軟件的安全性進(jìn)行驗(yàn)證:還有用于 檢測(cè)w e b 應(yīng)用軟件負(fù)載限度與性能參數(shù)的測(cè)試工具l o a da n dp e r f o r m a n c et e s t t o o l s 等等。以上絕大部分工具只局限于靜態(tài)方面的檢測(cè),而信息來(lái)源均為w e b 應(yīng)用軟件的代碼,意味著待系統(tǒng)開(kāi)發(fā)完畢才能開(kāi)始測(cè)試用例的生成工作,所以 工業(yè)界需要一種能在最小代價(jià)下,幫助用戶(hù)完成w e b 應(yīng)用行為檢測(cè)的自動(dòng)化工 具。 隨著面向?qū)ο蠛湍P万?qū)動(dòng)概念的出現(xiàn)與盛行,軟件產(chǎn)品基于模型的測(cè)試方 法在業(yè)界引起了廣泛關(guān)注。雖然許多專(zhuān)家學(xué)者致力于該領(lǐng)域的研究,且獲得了 一些進(jìn)展,但其理論與實(shí)際應(yīng)用尚存在差距,由于系統(tǒng)性的缺乏與低自動(dòng)化程 度,這些理論指導(dǎo)下開(kāi)發(fā)的工具均無(wú)法在工業(yè)界代替?zhèn)鹘y(tǒng)測(cè)試手段【1 0 之0 1 。 創(chuàng)建模型是基于模型測(cè)試方法的首要步驟。對(duì)于w e b 應(yīng)用,常用的建模方 5 上海人學(xué)碩士學(xué)位論文 法是利用實(shí)體關(guān)系圖或u m l 類(lèi)圖描述w e b 頁(yè)面結(jié)構(gòu)及各頁(yè)面間的關(guān)系。 i s a k o w i t z 等人提出一種稱(chēng)為關(guān)系管理方法論的方法對(duì)w e b 應(yīng)用進(jìn)行建?!? l 】; c o d a 等人設(shè)計(jì)了一個(gè)在更高抽象層次對(duì)w e b 應(yīng)用進(jìn)行建模的模式,稱(chēng)為 w o o m 2 2 】:g e l l e r s e n 等人引入一種w e b c o m p o s i t i o n 標(biāo)記語(yǔ)言,用以運(yùn)行w 曲 應(yīng)用開(kāi)發(fā)時(shí)期創(chuàng)建的稱(chēng)為w 如c o m p o s i t i o n 的模型【2 3 】;c o a u e n 等人擴(kuò)展了u m l 建模語(yǔ)言,使之能夠根據(jù)w e b 應(yīng)用的固有特征對(duì)它們進(jìn)行更方便更準(zhǔn)確的描述 【2 4 1 。文獻(xiàn) 2 5 提出了一種用g f s m ( g u a r d e df s m ) 對(duì)w 曲瀏覽器的交互行為 進(jìn)行描述的方法,它針對(duì)w e b 瀏覽器的獨(dú)特性質(zhì)對(duì)f s m 進(jìn)行擴(kuò)展,使之能夠 更為精準(zhǔn)地對(duì)w e b 瀏覽器建模。然而這些方法大部分不涉及w e b 應(yīng)用的行為及 功能,而且與它們配套的測(cè)試方法也沒(méi)有給出。u m l 模型確實(shí)可以為w e b 應(yīng) 用的動(dòng)態(tài)方面進(jìn)行建模,也有不少通過(guò)已有u m l 模型進(jìn)行測(cè)試用例自動(dòng)生成 的成果,但往往因?yàn)閡 m l 語(yǔ)言的二義性需要人工干預(yù)才能完成。由于u m l 的 半形式化特性阻礙了測(cè)試自動(dòng)化,目前為止,還沒(méi)有完整支持工具體系的報(bào)道。 另外,僅僅使用u m l 模型描述w e b 應(yīng)用的初衷只是研究測(cè)試方法,卻忽略了 模型檢驗(yàn)對(duì)模型的要求。另一方面,學(xué)術(shù)界提出了許多從形式化模型產(chǎn)生測(cè)試 用例的方法。文獻(xiàn) 2 6 】設(shè)計(jì)了一種用于產(chǎn)生測(cè)試用例的面向?qū)ο蟮膚 e b 應(yīng)用測(cè) 試模型,它由對(duì)象關(guān)系圖、頁(yè)面導(dǎo)航圖、對(duì)象狀態(tài)圖、段落分支圖及功能簇圖 組成,只是一旦w e b 應(yīng)用的對(duì)象過(guò)多,模型也會(huì)過(guò)于復(fù)雜;r i c c a 等人通過(guò)對(duì) 每個(gè)w e b 頁(yè)面進(jìn)行建模來(lái)達(dá)到描述整個(gè)w e b 應(yīng)用的目的,并提出相應(yīng)準(zhǔn)則以產(chǎn) 生測(cè)試用例,但只有處理簡(jiǎn)單w r e b 應(yīng)用時(shí)才適用 2 7 】: 6 1 j l 匿過(guò)f s m 模型對(duì)w 曲 應(yīng)用進(jìn)行建模,然后依照不同的測(cè)試準(zhǔn)則,搜索模型中的不同路徑以得到測(cè)試 準(zhǔn)則要求的測(cè)試用例集。這一方法充分利用了f s m 模型的優(yōu)勢(shì),簡(jiǎn)化、精確化 并極大程度地自動(dòng)化了測(cè)試過(guò)程,成為研究的新方向。 形式化模型固然有種種非形式化模型所不能替代的優(yōu)點(diǎn),但直接利用它們 進(jìn)行w e b 應(yīng)用建模仍有一定困難。為了增強(qiáng)相關(guān)工具的通用性,我們采用的最 初模型依然是u m l 模型,因?yàn)樗撼蔀楣I(yè)界廣泛認(rèn)可的標(biāo)準(zhǔn)語(yǔ)言,能夠強(qiáng) 有力地輔助用戶(hù)對(duì)復(fù)雜的w e b 應(yīng)用軟件進(jìn)行建模。而要避免陷入計(jì)算機(jī)無(wú)法自 動(dòng)識(shí)別模型的危機(jī),就必須對(duì)已創(chuàng)建的u m l 模型進(jìn)行形式化,學(xué)術(shù)界在這方 6 上海大學(xué)碩士學(xué)位論文 面已頗有些研究成果。p r e c i s eu m lg r o u p t 2 8 】是一個(gè)由領(lǐng)域內(nèi)各國(guó)學(xué)者組成的團(tuán) 體,是u m l 形式化的主力部隊(duì)之一,他們致力于使用如z 或v d m 等面向模 型的標(biāo)記為u m l 建模語(yǔ)言提供精確的語(yǔ)義。另外,還有其它研究成果,b o r e g e s 等人【2 9 】將u m l 類(lèi)圖與形式化規(guī)格說(shuō)明語(yǔ)言o h c i r c u s 結(jié)合,用o h c i r c u s 來(lái)描述 各種u m l 元素;l a t e l l a 等人【3 0 】將u m l 狀態(tài)圖形式化成為語(yǔ)言p r o m e l a ;t r a o r e 等人【3 l 】提出一種將u m l 狀態(tài)圖形式化成為p v s 的方法,方便模型檢測(cè)的自動(dòng) 化過(guò)程;文獻(xiàn) 3 2 ,3 3 提供了一種u m l 順序圖的基于形式化軌跡的語(yǔ)義;文獻(xiàn) 3 4 ,3 5 根據(jù)p o m s e t 框架方法給出了u m l 順序圖的形式化語(yǔ)義;文獻(xiàn) 3 6 幣1 j 用 高階邏輯表示一些u m l 標(biāo)記的形式化語(yǔ)義,并將u m l 順序圖語(yǔ)義編碼為p v s ; 【3 7 提出u m l 順序圖的一種形式化語(yǔ)義用于模型一致性檢測(cè)功能的開(kāi)發(fā)。但 是,將u m l 模型形式化為f s m 模型的研究卻很少。e r i c h 等人【3 8 】給出了一種 層次有限狀態(tài)機(jī)模型,可用于存儲(chǔ)u m l 狀態(tài)圖的信息,也包括層次信息,而 這種層次性卻沒(méi)有進(jìn)一步的方法加以去除,無(wú)法得到真正的f s m 模型。鑒于 u m l 狀態(tài)圖實(shí)際上是建立在f s m 相關(guān)理論基礎(chǔ)上的,除此之外的u m l 圖到 狀態(tài)圖的轉(zhuǎn)換的已有方法也為其它u m l 圖的形式化研究提供了很好的參考。 j o nw h i t t l e 等人【3 9 】提出一種通過(guò)添加語(yǔ)義信息,自動(dòng)將一組u m l 順序圖轉(zhuǎn)換 成為u m l 狀態(tài)圖的方法;文獻(xiàn) 4 0 】引入一種自動(dòng)轉(zhuǎn)換u m l 模型的框架,它借 助于重寫(xiě)邏輯的形式化描述方法。 在對(duì)f s m 模型進(jìn)行歸約優(yōu)化的領(lǐng)域中,由于f s m 自身發(fā)展歷史悠久的理 論基礎(chǔ),該模型的歸約與約簡(jiǎn)也早已成為研究的重點(diǎn)【4 i 舶】。提出的方法大部分 集中于去除f s m 模型中的冗余信息,避免重復(fù)記錄的現(xiàn)象發(fā)生,而我們則希望 根據(jù)用戶(hù)需求,僅提取原系統(tǒng)f s m 模型中描述指定功能的那一部分。這一機(jī)制 與在測(cè)試意圖或測(cè)試指示指導(dǎo)下產(chǎn)生測(cè)試用例比較類(lèi)似,可將歸約指示 ( r e d u c t i o nd i r e c t i v e ) 對(duì)應(yīng)至測(cè)試意圖或測(cè)試指示,將歸約w e b 應(yīng)用模型對(duì)應(yīng) 至歸約測(cè)試用例。對(duì)前者給予關(guān)注與了解將大大推進(jìn)后者的研究進(jìn)度,使我們 站在已有成果的基礎(chǔ)上繼續(xù)向上攀登。文獻(xiàn) 4 5 】擴(kuò)展來(lái)源于l o t o s 規(guī)格說(shuō)明的 遷移標(biāo)記系統(tǒng),并闡述了一種根據(jù)其相關(guān)覆蓋信息達(dá)到測(cè)試套件最小化的方法; h s i o u - w e nh s u e h 等人【刪提出了一種新型的基于啟發(fā)式邏輯編程的測(cè)試指示生 7 上海人學(xué)碩士學(xué)位論文 成方法,并利用生成的測(cè)試指示產(chǎn)生相應(yīng)的測(cè)試用例集;在文獻(xiàn) 4 7 ,4 8 e p ,測(cè) 試指示中的元素首先以對(duì)象圖和狀態(tài)圖表示,當(dāng)它用于約束目的測(cè)試用例集的 大小及其它方面時(shí),它將通過(guò)為每個(gè)c o n s t r u c t 單元添加相應(yīng)i f 片斷被賦予有效 語(yǔ)義。以上所述大部分研究均假設(shè)測(cè)試意圖或測(cè)試指示已構(gòu)建,并以某種模型 的形式存在,且旨在說(shuō)明最終生成的測(cè)試用例所需滿(mǎn)足的條件,從麗在原測(cè)試 模型的基礎(chǔ)上獲得更小的測(cè)試用例集。我們要解決的問(wèn)題,卻是如何有效構(gòu)建 代表指定功能的歸約指示模型,最終獲得更小的w e b 應(yīng)用行為模型,測(cè)試用例 的產(chǎn)生與模型檢驗(yàn)則被劃作后續(xù)工作。 對(duì)于f s m 模型的可視化,已有一些圖形化工具,它們以自己定義的無(wú)語(yǔ)義 的圖形描述語(yǔ)言為輸入,產(chǎn)生相應(yīng)的圖形,如g r a p h v i z 等。另外,德國(guó)的a x e l s c h n e i d e r 和s t e p h a nw a l t e r 提出一種將描述有限狀態(tài)機(jī)的表格式說(shuō)明語(yǔ)言 a d e v a 轉(zhuǎn)化成圖形表示形式的方法【4 9 1 ,而微軟公司則自定義了一種抽象狀態(tài)機(jī) 語(yǔ)言a s m l ,并開(kāi)發(fā)了名為s p e ee x p l o r e r 的測(cè)試工具,可將該語(yǔ)言的文本轉(zhuǎn)化成 為相應(yīng)的有限狀態(tài)機(jī)的圖形表示【5 0 - 5 3 j 。但也由于其特定輸入語(yǔ)言并未廣泛被工 業(yè)界接受與采納,直接用于實(shí)際f s m 模型文本的可視化尚有困難,我們選擇的 則是已成為國(guó)內(nèi)外行業(yè)標(biāo)準(zhǔn)的x m l 標(biāo)記語(yǔ)言,它的發(fā)展前景將因此變得更好。 當(dāng)然,雖然都與項(xiàng)目采用的f s m 模型語(yǔ)言不同,但大體方向一致,仍有許多可 借鑒之處。另外,上述工具均只能作用于無(wú)層次信息的f s m 模型文檔,但本文 提出的方法對(duì)于層次有限狀態(tài)機(jī)模型的文檔亦有效。 1 3 2 國(guó)內(nèi)研究概況 國(guó)內(nèi)數(shù)所研究機(jī)構(gòu)也有學(xué)者對(duì)形式建模或基于模型的測(cè)試進(jìn)行了研究,并 取得了一些進(jìn)展,但都是比較初步的,也未見(jiàn)系統(tǒng)級(jí)研究的報(bào)道。 在建模相關(guān)方面,u m l 模型之間的相互轉(zhuǎn)換及u m l 模型形式化為f s m 模 型已有部分專(zhuān)家進(jìn)行了研究,并取得初步進(jìn)展。文獻(xiàn) 5 4 1 提出了一種將u m l 順 序圖轉(zhuǎn)換為多個(gè)u m l 狀態(tài)圖的方法,它針對(duì)每個(gè)描述對(duì)象的具體運(yùn)行機(jī)制自 定義一個(gè)向量,通過(guò)向量中各項(xiàng)的不同賦值區(qū)分最終得到的狀態(tài)圖的各狀態(tài)。 向量中各項(xiàng)均為系統(tǒng)變量,它們分別取值后的組合可以唯一地表示系統(tǒng)所處狀 上海大學(xué)碩士學(xué)位論文 態(tài)。但是,對(duì)于每個(gè)具體的w e b 應(yīng)用,這種方法都必須人為設(shè)定該向量的組成 項(xiàng)及最終得到的狀態(tài)圖中各狀態(tài)所對(duì)應(yīng)的賦值向量,使得測(cè)試自動(dòng)化無(wú)法實(shí)現(xiàn), 而且歸約指示與測(cè)試用例只需要f s m 模型中的遷移信息,狀態(tài)只是為了遷移的 存在而存在,故其詳細(xì)含義可忽略。文獻(xiàn) 5 5 提出了一種通過(guò)時(shí)間自動(dòng)機(jī)來(lái)形 式化帶有時(shí)間擴(kuò)展的u m l 狀態(tài)圖的方法,該過(guò)程分為兩部分完成:層次狀態(tài) 圖的平面化以及時(shí)間化自動(dòng)機(jī)的構(gòu)造。但是,它的應(yīng)用對(duì)象僅限于由最基本元 素組成的u m l 狀態(tài)圖,我們則將范圍擴(kuò)大化,使常用的一些特殊元素也能夠 有對(duì)應(yīng)的算法進(jìn)行相應(yīng)轉(zhuǎn)換,如c o m p l e t i o n 遷移、f o r k 、j o i n 和歷史狀態(tài)結(jié)點(diǎn) 等,提高其通用性。 關(guān)于在歸約指示的指導(dǎo)下進(jìn)行模型歸約優(yōu)化的研究很少,但有一些基于場(chǎng) 景歸約的構(gòu)件式系統(tǒng)分析方面的探索對(duì)本課題的研究較有幫助。文獻(xiàn) 5 6 ,5 7 使 用接口自動(dòng)機(jī)及接口自動(dòng)機(jī)網(wǎng)絡(luò)來(lái)描述構(gòu)件式系統(tǒng)的行為設(shè)計(jì)模型,使用u m l 順序圖表示基于場(chǎng)景的需求歸約,對(duì)系統(tǒng)設(shè)計(jì)階段的構(gòu)件交互行為的動(dòng)態(tài)兼容 性進(jìn)行形式化分析和檢驗(yàn),通過(guò)對(duì)接口自動(dòng)機(jī)網(wǎng)絡(luò)狀態(tài)空間的分析,給出了一 系列算法以檢驗(yàn)系統(tǒng)行為的存在一致性以及幾種不同形式的強(qiáng)制一致性性質(zhì)。 而我們歸約后獲得的w e b 應(yīng)用模型亦為自動(dòng)機(jī),選用的歸約指示初始描述語(yǔ)言 亦為u m l 順序圖,這些相似之處使得汲取該成果中部分思想為我們自身所用 成為可能。 1 4 論文的主要研究?jī)?nèi)容 本論文是以作者攻讀碩士學(xué)位期間承擔(dān)課題的工作為基礎(chǔ),在第一章中闡 述了課題研究的來(lái)源、目的、意義以及國(guó)內(nèi)外研究的現(xiàn)狀。 第二章介紹相關(guān)概念,其中一部分是理解本文研究?jī)?nèi)容的目的與背景時(shí)必 須了解的知識(shí),例如基于模型的測(cè)試等;另一部分是研究?jī)?nèi)容中將要運(yùn)用到的 理論,是后續(xù)理論的基礎(chǔ),例如u m l 建模語(yǔ)言、u m l 狀態(tài)圖、u m l 順序圖、 f s m 模型等。 第三章提出并詳細(xì)說(shuō)明了將u m l 模型形式化為f s m 模型的方法。u m l 建模語(yǔ)言包含數(shù)種圖形,以描述系統(tǒng)的不同方面,由于本課題的目的在于測(cè)試 9 上海大學(xué)碩士學(xué)位論文 w e b 應(yīng)用的行為,故集中于對(duì)其行為模型的研究。該章的重點(diǎn)在u m l 狀態(tài)圖 的形式化上,因?yàn)樗亲畛S靡越O到y(tǒng)中單個(gè)對(duì)象的行為,記錄系統(tǒng)最小單 位的生命周期。順序圖的形式化將在第四章闡述,它將作為歸約指示而存在。 第四章提出了一種優(yōu)化系統(tǒng)f s m 模型的方法,即在歸約指示的指導(dǎo)下歸約 系統(tǒng)f s m 模型,得到的歸約模型由原模型中足夠描述歸約指示指定的功能的所 有元素組成,并將原模型中的不影響指定功能描述的元素全部去除,以達(dá)到優(yōu) 化的目的。該方法大致可分為兩步:首先,對(duì)非形式化的測(cè)試指示進(jìn)行形式化, 因?yàn)檎Z(yǔ)義的不精確性將影響計(jì)算機(jī)自動(dòng)讀取分析測(cè)試指示及其對(duì)原系統(tǒng)f s m 模型的約束;然后,便可在上一步中得到的形式化歸約指示的指導(dǎo)下,根據(jù)該 章提出的歸約算法將原系統(tǒng)模型的規(guī)模減至最小。 第五章以層次有限狀態(tài)機(jī)模型文檔可視化的實(shí)現(xiàn)方法為主要內(nèi)容,也介紹 了前兩章中所述模型形式化與模型優(yōu)化方法的實(shí)現(xiàn)方案,并給出部分模擬運(yùn)行 結(jié)果,以說(shuō)明本文所提出理論及方法的可行性。層次有限狀態(tài)機(jī)模型的可視化 是以某種格式的文本為輸入,以其對(duì)應(yīng)模型的圖形形式為輸出,大致分為文本 的獲取、信息抽取、信息處理與圖像輸出四個(gè)子過(guò)程。我們分別針對(duì)這四個(gè)子 過(guò)程提出算法,最終實(shí)現(xiàn)層次有限狀態(tài)機(jī)模型文本向圖形的轉(zhuǎn)換。而第三和第 四章中所闡述方法的實(shí)現(xiàn),要求所涉及模型擁有計(jì)算機(jī)可識(shí)別的載體與用于相 關(guān)信息存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu),這些都將在該章提及。 最后,第六章總結(jié)全文,對(duì)本文所做的全部研究工作進(jìn)行歸納與分析,指 出有待完善之處,并對(duì)該領(lǐng)域未來(lái)研究方向闡述了本人的觀(guān)點(diǎn)。 1 0 上海大學(xué)碩上學(xué)位論文 第二章理論基礎(chǔ)與基本概念 2 1 基于模型的測(cè)試 軟件測(cè)試方法主要可分為白盒測(cè)試與黑盒測(cè)試,前者利用程序內(nèi)部的邏輯 結(jié)構(gòu)及有關(guān)信息,設(shè)計(jì)或選擇測(cè)試用例,對(duì)程序所有邏輯路徑進(jìn)行測(cè)試;后者 則不必考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,依據(jù)需求規(guī)格檢測(cè)系統(tǒng)行為是否 符合預(yù)期。本課題旨在w e b 應(yīng)用的功能測(cè)試,故采用黑盒測(cè)試,減少其代碼復(fù) 雜性帶來(lái)的測(cè)試?yán)щy。但傳統(tǒng)方法的自動(dòng)化程度并不盡如人意?;谀P偷臏y(cè) 試是一種突破性的黑盒測(cè)試技術(shù),它以明確描述系統(tǒng)預(yù)期行為的抽象模型為依 據(jù),自動(dòng)生成可執(zhí)行的測(cè)試用例,自動(dòng)地產(chǎn)生測(cè)試腳本,執(zhí)行測(cè)試并自動(dòng)評(píng)價(jià) 測(cè)試結(jié)果,實(shí)現(xiàn)測(cè)試過(guò)程的完全自動(dòng)化。 模型是其建模對(duì)象的一種抽象藍(lán)本,它可以從結(jié)構(gòu)或行為角度分別對(duì)系統(tǒng) 的組織模型和動(dòng)態(tài)行為方面進(jìn)行描述。由于模型可以幫助我們更好地理解系統(tǒng), 更重要的是其在用戶(hù)和開(kāi)發(fā)人員之間的橋梁作用,建模工作應(yīng)該在編程前完成, 以使產(chǎn)品最大程度地滿(mǎn)足用戶(hù)的需求。而基于模型的測(cè)試方法正是在此階段創(chuàng) 建的模型的基礎(chǔ)上,自動(dòng)產(chǎn)生測(cè)試用例。因此,測(cè)試用例的生成被提前到設(shè)計(jì) 建模之后,無(wú)需等待產(chǎn)品代碼全部完成,從而將整個(gè)測(cè)試周期縮小,這樣也可 以有更多的時(shí)間制定更為有效的測(cè)試計(jì)劃并更充分利用資源【5 】。該方法的大致 流程如圖2 1 a 所示,圖2 1 b 則是傳統(tǒng)測(cè)試方法的流程圖,兩者的差別顯而易見(jiàn)。 本課題組采用基于模型的測(cè)試方法思想對(duì)w e b 應(yīng)用進(jìn)行測(cè)試,雖然它讓我 們離自動(dòng)化測(cè)試更近了一步,但測(cè)試模型的選取依然直接影響到自動(dòng)化程度的 高低,因?yàn)榇四P蛯⑹亲詣?dòng)用例產(chǎn)生的唯一信息來(lái)源,如果缺乏語(yǔ)義精確性, 則不可避免地在測(cè)試過(guò)程中加入人工分析。所以本課題組的研究方向是先將初 始需求與設(shè)計(jì)模型轉(zhuǎn)換成為形式化的測(cè)試模型的測(cè)試方法,其具體細(xì)節(jié)介紹如 下。首先,由開(kāi)發(fā)人員根據(jù)用戶(hù)需求手工創(chuàng)建u m l 模型,得到用以全面描述 待實(shí)現(xiàn)軟件產(chǎn)品的圖形集。然后,根據(jù)各圖形相應(yīng)的映射規(guī)則將其元素轉(zhuǎn)換成 上海大學(xué)碩上學(xué)位論文 圖( a ) 基于模型的測(cè)試方法 圖c o ) 基于代碼的測(cè)試方法 圖2 1 兩種測(cè)試方法的流程圖比較 為目標(biāo)模型中的元素,從而轉(zhuǎn)換成為目標(biāo)模型。至此,開(kāi)發(fā)人員將得到多個(gè)目 標(biāo)模型,接下來(lái),可以選取單個(gè)目標(biāo)模型本身或?qū)ζ溥M(jìn)行歸約后得到的模型作 為測(cè)試模型,也可以將幾個(gè)目標(biāo)模型以某種機(jī)制進(jìn)行組合來(lái)獲得測(cè)試模型。最 后,在自定義的測(cè)試準(zhǔn)則的約束下,產(chǎn)生抽象測(cè)試用例并用于測(cè)試。 2 2u m l 統(tǒng)一建模語(yǔ)言( u m l ) 是用來(lái)對(duì)軟件密集系統(tǒng)進(jìn)行可視化建模的一種語(yǔ)言, 它為面向?qū)ο箝_(kāi)發(fā)系統(tǒng)的產(chǎn)品進(jìn)行說(shuō)明、可視化和編制文檔。由于其簡(jiǎn)單易用、 便于理解且能全面描述系統(tǒng)的各個(gè)方面,已被廣泛使用并被o m g 組織采納作 為業(yè)界的標(biāo)準(zhǔn)。作為一種建模語(yǔ)言,u m l 專(zhuān)注于從不同角度建立軟件產(chǎn)品的模 1 2 上海人學(xué)碩上學(xué)位論文 型和結(jié)構(gòu),對(duì)于具體的語(yǔ)言及算法并不涉及,這使開(kāi)發(fā)人員可以在較高的抽象 層次上整體把握待開(kāi)發(fā)系統(tǒng)的組織結(jié)構(gòu)及行為等;作為一種可視化模型,u m l 通過(guò)圖形直觀(guān)地將信息傳達(dá)給開(kāi)發(fā)人員或用戶(hù),幫助他們更好地理解系統(tǒng)結(jié)構(gòu) 與功能,促進(jìn)溝通,最大程度地保證與用戶(hù)需求的一致性。 u m l 中有多達(dá)十幾種圖形供建模人員選擇,分別滿(mǎn)足不同角度、不同建模 方式的不同需求,其中最常用的有類(lèi)圖、對(duì)象圖、用例圖、順序圖、通信圖、 活動(dòng)圖和狀態(tài)圖。類(lèi)圖和對(duì)象圖一般描述系統(tǒng)中對(duì)象間的關(guān)系或系統(tǒng)層次關(guān)系, 為系統(tǒng)的靜態(tài)特性建模;用例圖、順序圖等其余圖形大多描述對(duì)象間的交互機(jī) 制或單個(gè)對(duì)象的生命活動(dòng)周期,為系統(tǒng)的動(dòng)態(tài)特性建模。由于本文針對(duì)的測(cè)試 系功能測(cè)試,即在預(yù)定輸入或事件觸發(fā)下,捕捉與預(yù)期不符的動(dòng)作或輸出,測(cè) 試信息的大部分來(lái)源是行為模型。 作為行為模型之一的狀態(tài)圖用以描述某個(gè)對(duì)象的生命周期,從它被創(chuàng)建或 初始化開(kāi)始,直到被撤銷(xiāo)或回
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司臘八活動(dòng)策劃方案
- 2025年藝術(shù)設(shè)計(jì)專(zhuān)業(yè)技能考試試題及答案
- 2025年物流管理專(zhuān)業(yè)考試試卷及答案
- 2025年市場(chǎng)營(yíng)銷(xiāo)師職業(yè)考試試題及答案
- 多傳感器融合定位-第4篇-洞察及研究
- 2025年青少年犯罪預(yù)防與干預(yù)知識(shí)考試試卷及答案
- 2025年機(jī)器人技術(shù)應(yīng)用職業(yè)資格考試題及答案
- 2025年基礎(chǔ)音樂(lè)教育與技能考試試卷及答案
- 2025年短視頻制作與傳播課程考試試題及答案
- 2025年中國(guó)立袋行業(yè)市場(chǎng)全景分析及前景機(jī)遇研判報(bào)告
- JJF 1069-2012 法定計(jì)量檢定機(jī)構(gòu)考核規(guī)范(培訓(xùn)講稿)
- 加油站有限空間安全警示牌
- 安全員的任職條件及職責(zé)
- 資產(chǎn)評(píng)估收費(fèi)管理辦法(2023)2914
- 出師表標(biāo)準(zhǔn)注音版修正版
- 孤獨(dú)癥康復(fù)教育人員上崗培訓(xùn)練習(xí)題庫(kù)及答案
- 籃球比賽記錄表A4版
- 機(jī)械設(shè)備投入計(jì)劃及保證措施
- 小兒清熱止咳口服液產(chǎn)品知識(shí)-課件
- 鋼 筋 檢 查 記 錄 表(鋼筋加工及安裝)
- 附件9:未取得國(guó)外國(guó)籍的聲明
評(píng)論
0/150
提交評(píng)論