亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于動態(tài)調(diào)用圖的Java程序修改影響分析技術(shù)

        2014-12-31 00:00:00姚錚

        摘 要:在當(dāng)前靜態(tài)分析技術(shù)對于分析算法有著重要的影響,由于其方法比較復(fù)雜這就出現(xiàn)了精度不高,因此本文針對在靜態(tài)分析中存在的實際問題進(jìn)行具體的研究,能夠從其問題中提出改進(jìn)的方案,并且采用動態(tài)分析技術(shù)構(gòu)造Java程序的動態(tài)調(diào)用圖,文章中采用k-類方法后向切片計算修改影響的集合,之進(jìn)行具體的試驗,提高了精度,該技術(shù)的革新便于在大型Java程序中進(jìn)行應(yīng)用,改善了測試效果。

        關(guān)鍵詞:動態(tài)調(diào)用圖;Java程序;影響分析

        中圖分類號:TP311.5

        由于大部分軟件是面向?qū)ο蠓椒ň帉?,逐漸的形成了回歸測試技術(shù),面向技術(shù)中,其對象之間是一種繼承和組合的關(guān)系,并且各個對象之間是通過消息相互影響的,本文在研究影響分析算法中,是在程序靜態(tài)分析技術(shù)的基礎(chǔ)上進(jìn)行的,針對其中存在的問題以及在靜態(tài)分析中精度不高的現(xiàn)狀具體的改善,研究出了動態(tài)分析技術(shù)構(gòu)造程序的類成員防火墻,提高了分析精度,同時降低了計算的復(fù)雜程度,這樣就促進(jìn)了修改影響分析技術(shù)的應(yīng)用效果。

        1 基于動態(tài)信息的修改影響

        為了提高計算的精度,改善計算的復(fù)雜程序,這就提出了動態(tài)信息的修改影響分析,首先在獲得動態(tài)信息中,一般需要在程序中插樁,促進(jìn)程序能夠正常的將信息進(jìn)行輸出,這就需要在設(shè)計中將編譯后的Java字節(jié)碼程序插樁,然而本文在實施的過程中采用的是將每個方法插樁,來記錄調(diào)用信息,在設(shè)計中其動態(tài)信息的修改影響分析的原理是:如圖1所示,在進(jìn)行插樁后的Java程序設(shè)計中,能夠根據(jù)輸出執(zhí)行軌跡信息并且構(gòu)造出動態(tài)調(diào)用圖,然后進(jìn)行修改影響分析,最終得出需要重新測試的模塊,保障了高效的回歸測試。

        2 動態(tài)信息調(diào)用圖的設(shè)計

        由于軟件測試在開銷中應(yīng)用的范圍比較廣,這就提出了軟件回歸測試,其中該軟件是指針對修改之后的軟件進(jìn)行測試,然后需要達(dá)到修改后能夠完成新的功能測試,并且在修改之后能否引入新的錯誤。但是在設(shè)計的過程中由于各個程序之間的元素關(guān)系比較復(fù)雜,這就需要在設(shè)計中提出詳細(xì)的分析方法,能夠使其在使用中對于整個程序進(jìn)行重新測試,從此注重軟件的后期開發(fā)以及軟件的維護(hù)階段,能夠頻繁并且在少量修改的狀態(tài)下使用軟件,在使用中每次修改時都要重新運(yùn)行全部的測試,這就導(dǎo)致了軟件開發(fā)和維護(hù)的效率比較低,這種形式就是修改影響分析。因此在修改影響分析中其主要的目的是提高測試的效率,降低測試的費用,簡化測試的程序,本文提出了動態(tài)信息的修改設(shè)計,采用的是動態(tài)信息調(diào)用圖,對程序中函數(shù)調(diào)用關(guān)系的一種靜態(tài)描述,節(jié)點表示的是具體的函數(shù)關(guān)系,邊表示的是函數(shù)之間的調(diào)用關(guān)系,由于虛函數(shù)主要是針對函數(shù)調(diào)用點來研究的,因此在設(shè)計中必須要根據(jù)運(yùn)行時接受對象的實際類型以及確定出函數(shù)調(diào)用的目標(biāo)之后具體進(jìn)行,當(dāng)遇到如果在編譯期對虛函數(shù)調(diào)用點時采用的是不同靜態(tài)處理的方式,這種處理方式是通過靜態(tài)分析來構(gòu)建函數(shù)調(diào)用圖,并且在程序的設(shè)計中進(jìn)行實際的函數(shù)調(diào)用分析,建立一定的模擬器程序函數(shù)調(diào)用圖來分析,但是針對虛函數(shù)調(diào)用點在應(yīng)用中,需要在靜態(tài)調(diào)用圖不精確的結(jié)果。

        然而本文在研究動態(tài)調(diào)用圖中,將其作為一種修改影響分析的對象,并且給予靜態(tài)調(diào)用圖的基礎(chǔ)上進(jìn)行,在程序的設(shè)計中將其從程序執(zhí)行的動態(tài)信息中構(gòu)造調(diào)用圖,直接從程序中進(jìn)行,該技術(shù)采用的是執(zhí)行信息,然后修改之后的精度卻比靜態(tài)調(diào)用圖高,在簡化了程序中,提高了效率。動態(tài)調(diào)用圖在設(shè)計中,重點是對構(gòu)造算法具體確定,在確定出具體的節(jié)點以及邊的信息之后,根據(jù)節(jié)點來將軌跡中記錄的調(diào)用信息加入動態(tài)調(diào)用圖中,在實施的過程中采用先進(jìn)后出的方式進(jìn)行,在遇到了標(biāo)志為in的節(jié)點后,將其表示的方法被調(diào)用,然后將算法從所有的軌跡中提出出來,并且將調(diào)用的信息構(gòu)造出新的動態(tài)調(diào)用圖。

        3 修改影響分析算法

        通過分析設(shè)計,最終得出了動態(tài)調(diào)用圖,然后進(jìn)行修改影響分析,在后向切片來計算修改影響集合過程。在定義為k-類方法后向切片,然后令E是一個程序,并且將給定的切片準(zhǔn)則確定,在設(shè)計中具體的規(guī)定,其中具體的算法是:當(dāng)BSLice(E)m,k={m′|(m′→km)∈DCG},m′→k,m是m′到m中存在著一條長度是k的可達(dá)路徑,并且m′屬于切片集合,當(dāng)且僅當(dāng)m′在動態(tài)調(diào)用圖中存在著一條長度是k的可達(dá)路徑到達(dá)m。然而在設(shè)計中,后切片是BSLice(E)m中的元素與m是調(diào)用關(guān)系,將修改影響分析設(shè)定為:當(dāng)m′調(diào)用m,那么m的修改影響分析就會影響到m′,但是m′卻不會影響到m,其中k表示的是調(diào)用層次對修改的影響關(guān)系,當(dāng)與 靠近時,其中產(chǎn)生的影響關(guān)系就比較大,之后設(shè)定的k層之后就不會影響。但是在BSLice(E)m,k中,其計算方法是標(biāo)準(zhǔn)的圖,最終可達(dá)到算法,在修改之后達(dá)到了影響集合的效果,這就形成了修改影響分析技術(shù)。將其算法表示為:

        輸入:動態(tài)信息調(diào)用圖,被修改的方法是集合M,并且調(diào)用層是k;

        輸出:修改影響集合是affectedM

        For each mi∈M do|

        affectedM=affectedM∪BSLice(E)m,k

        通過具體的算法設(shè)計,將Java程序進(jìn)行研究,進(jìn)行引入錯誤,設(shè)定k=4之后,進(jìn)行新測試方法,通過程序開發(fā)人員和測試人員具體設(shè)定的。具體的試驗結(jié)果如表1:

        表1 實驗結(jié)果對比分析圖

        程序方法/個修改的方法數(shù)量/個修改影響集合的大小遺漏的需要重新測試的方法數(shù)量/個

        TK-simulate5436351

        Automata-Graph7425522

        通過上述實驗結(jié)果表明:在使用動態(tài)信息調(diào)用圖中,能夠改善修改影響分析的效率,并且提高了使用的價值,在該軟件的設(shè)計以及應(yīng)用中提高了測試的效率。

        4 結(jié)束語

        通過分析軟件回歸測試,進(jìn)行修改之后實施測試,當(dāng)遇到了沒有分析方法時,需要對設(shè)計修改之后的軟件進(jìn)行重新測試,避免軟件在開發(fā)以及維護(hù)中受到影響,因此針對這種現(xiàn)狀,改善了精度不高以及靜態(tài)分析中存在的不足,結(jié)果構(gòu)造出了Java程序的動態(tài)調(diào)用圖,為促進(jìn)我國大型Java程序測試的具體應(yīng)用做出了有效的保障,提高了軟件的應(yīng)用效果。

        參考文獻(xiàn):

        [1]劉震,廖麗,房英明.面向數(shù)據(jù)流的Java程序指針分析技術(shù)研究[J].計算機(jī)軟件與理論分析,2013(24).

        [2]王夢霞,何偉,張澤鑫.Java程序及對象關(guān)系的動態(tài)可視技術(shù)研究與實現(xiàn)[J].計算機(jī)應(yīng)用技術(shù),2011(23).

        [3]胡斌,孔令子,郭穎珍.面向Java語言的進(jìn)化測試中分支依賴圖的構(gòu)建[J].計算機(jī)科學(xué)技術(shù)研究,2013(09).

        作者單位:湖北工業(yè)大學(xué) 計算機(jī)學(xué)院,武漢 430068

        久久久99精品国产片| 免费人成再在线观看网站| 无码日日模日日碰夜夜爽| 日本道免费一区日韩精品| 亚洲av迷人一区二区三区| 蜜桃日本免费看mv免费版| 国产喷水福利在线视频| 中文字幕麻豆一区二区| 国产三级精品三级男人的天堂 | 国产肉体xxxx裸体137大胆| 久久人人97超碰超国产| 国产在线高清无码不卡| 久久亚洲乱码中文字幕熟女 | 永久免费看啪啪网址入口| 国产偷2018在线观看午夜| 蜜桃视频一区二区三区| 国产精品情侣呻吟对白视频| a人片在线观看苍苍影院| 亚洲av成人一区二区三区网址 | 免费在线观看av不卡网站| 狼人香蕉香蕉在线28 - 百度| 欧美深夜福利网站在线观看| 男女啪啪免费视频网址| 一区二区三区无码高清视频| 另类内射国产在线| 亚洲三级在线播放| 一区二区人妻乳中文字幕| 黑人巨大精品欧美一区二区免费 | 亚洲免费视频播放| 国产精品久久国产三级国| 插插射啊爱视频日a级| 午夜不卡av免费| 国产日韩欧美视频成人| 中文字幕女同人妖熟女| 国产又色又爽又高潮免费视频麻豆 | 美女裸体无遮挡黄污网站| 精品中文字幕在线不卡| 三年片大全在线观看免费观看大全| 亚洲欧美日韩专区一| 久久精品国产亚洲av日韩精品| 精品久久久久久无码专区|