999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于時(shí)序邏輯的編譯優(yōu)化測(cè)試用例生成方法

2007-12-31 00:00:00薛云志

摘要:提出一種基于時(shí)序邏輯公式的關(guān)鍵節(jié)點(diǎn)控制圖生成方法,生成的測(cè)試用例針對(duì)性強(qiáng),容易擴(kuò)展;并以該方法改進(jìn)了一種編譯優(yōu)化自動(dòng)化測(cè)試工具,在很大程度上消除了其測(cè)試冗余,提高了測(cè)試效率。

關(guān)鍵詞:編譯優(yōu)化; 測(cè)試用例; 時(shí)序邏輯; 基本塊; 關(guān)鍵節(jié)點(diǎn)控制圖

中圖分類(lèi)號(hào):TP301文獻(xiàn)標(biāo)志碼:A

文章編號(hào):1001-3695(2007)07-0046-03

0引言

編譯器是軟件開(kāi)發(fā)的基礎(chǔ)支撐工具,其正確性直接影響到應(yīng)用軟件的可靠性。它需要通過(guò)充分測(cè)試以保證其質(zhì)量。編譯器測(cè)試用例生成方法可以分為針對(duì)前端語(yǔ)法語(yǔ)義的用例生成方法和針對(duì)后端優(yōu)化算法的用例生成方法兩大類(lèi)[1]。

針對(duì)前端語(yǔ)法語(yǔ)義的測(cè)試用例生成方法的基本思想是基于語(yǔ)言文法生成測(cè)試用例,用于編譯器前端翻譯功能的測(cè)試[2,3]。隨著編譯技術(shù)的發(fā)展,優(yōu)化技術(shù)逐漸成為編譯技術(shù)研究的核心內(nèi)容,出現(xiàn)了一些針對(duì)后端優(yōu)化的測(cè)試用例生成方法,文獻(xiàn)[4]介紹一種針對(duì)編譯后端優(yōu)化的基于文法生成代碼的優(yōu)化測(cè)試用例生成方法。首先基于文法生成標(biāo)準(zhǔn)的源程序,再根據(jù)具體的優(yōu)化技術(shù)特點(diǎn)加入新的語(yǔ)句以滿(mǎn)足特定優(yōu)化條件。該方法仍屬于基于文法的用例生成方法,針對(duì)性較弱,具有較大局限性。文獻(xiàn)[5,6]對(duì)不同的優(yōu)化類(lèi)型進(jìn)行建模,再將模型映射到程序文本作為測(cè)試用例。此方法有較好的針對(duì)性,但其建模過(guò)程和模型映射過(guò)程需要對(duì)不同的優(yōu)化進(jìn)行不同的定制,實(shí)現(xiàn)較為復(fù)雜。由中國(guó)科學(xué)院軟件所研制的JTT是一個(gè)面向編譯優(yōu)化的自動(dòng)化測(cè)試工具,它用于嵌入式環(huán)境下的C++優(yōu)化編譯器的系統(tǒng)測(cè)試和回歸測(cè)試[7]。JTT在自動(dòng)生成程序控制結(jié)構(gòu)的基礎(chǔ)上,通過(guò)某些特定的隨機(jī)策略添加計(jì)算賦值語(yǔ)句,從而生成完整的測(cè)試用例。它缺乏對(duì)特定優(yōu)化精確的形式化描述,難以生成有針對(duì)性的優(yōu)化測(cè)試用例,存在大量測(cè)試冗余。文獻(xiàn)[8]使用基于時(shí)序邏輯的條件重寫(xiě)規(guī)則LHS→RHS ifΦ精確刻畫(huà)了編譯優(yōu)化。其中條件Φ用時(shí)序邏輯公式描述。

1基于時(shí)序邏輯的編譯優(yōu)化描述

典型的優(yōu)化變換能采用基于時(shí)序邏輯的條件重寫(xiě)規(guī)則LHS→RHS ifΦ來(lái)作精確刻畫(huà)[9]。變換由兩部分組成,即變換的一系列動(dòng)作和保證變換正確性的條件。變換動(dòng)作通過(guò)程序控制流圖中節(jié)點(diǎn)和連接邊的變化表示;有四種基本動(dòng)作,即節(jié)點(diǎn)替代(Replace)、邊刪除(Remove_edge)、邊添加(Add_edge)和邊分裂(Split_edge)。如圖1所示,節(jié)點(diǎn)替代是用一系列的節(jié)點(diǎn)替代控制流圖中的某個(gè)節(jié)點(diǎn);刪除邊和添加邊分別是移除和添加控制流圖中的連接邊;分裂邊是在相連接的兩節(jié)點(diǎn)間插入中間節(jié)點(diǎn)。

3討論及應(yīng)用

上述算法分為兩個(gè)階段:公式規(guī)整化和節(jié)點(diǎn)生成。其中公式規(guī)整化階段將每個(gè)條件的公式轉(zhuǎn)換為標(biāo)準(zhǔn)形式,以便節(jié)點(diǎn)生成階段的處理;節(jié)點(diǎn)生成階段則生成關(guān)鍵節(jié)點(diǎn)及關(guān)鍵節(jié)點(diǎn)之間的控制流。該算法需要的內(nèi)存空間與公式中所涉及到的節(jié)點(diǎn)數(shù)量成正比,需要的時(shí)間與條件數(shù)目以及節(jié)點(diǎn)數(shù)目成正比。因此,算法一定可以在有限時(shí)間內(nèi)結(jié)束。

構(gòu)造出一個(gè)基本塊的關(guān)鍵節(jié)點(diǎn)控制圖后,可以此為模板很方便地生成大量有針對(duì)性的測(cè)試用例;可以使用隨機(jī)策略或啟發(fā)式策略,在關(guān)鍵節(jié)點(diǎn)控制圖的節(jié)點(diǎn)之間插入新的節(jié)點(diǎn)。插入的新節(jié)點(diǎn)需要滿(mǎn)足插入點(diǎn)之前緊鄰關(guān)鍵節(jié)點(diǎn)的前向?qū)傩裕残枰獫M(mǎn)足插入點(diǎn)之后緊鄰關(guān)鍵節(jié)點(diǎn)的后向?qū)傩浴*?/p>

本文基于前面介紹的方法對(duì)JTT工具作了改進(jìn),用腳本描述了基于CTL的編譯優(yōu)化刻畫(huà)公式,并在此基礎(chǔ)上利用關(guān)鍵節(jié)點(diǎn)控制圖生成算法生成了一個(gè)基本塊的關(guān)鍵控制結(jié)構(gòu)。對(duì)于圖中的每一條虛邊,使用隨機(jī)策略(可以指定生成代碼的并行程度及嵌套程度)生成實(shí)際路徑來(lái)代替[7],插入賦值語(yǔ)句、表達(dá)式、變量和常量定義等語(yǔ)句,生成完整的源程序文件。通過(guò)改進(jìn)后,使得JTT測(cè)試用例更具針對(duì)性,縮短了測(cè)試時(shí)間,提高了測(cè)試效率。在工業(yè)界的實(shí)踐表明,改進(jìn)后的JTT能夠取得良好的測(cè)試質(zhì)量。圖5為JTT截圖。

4結(jié)束語(yǔ)

傳統(tǒng)的編譯優(yōu)化測(cè)試方法使用基于文法的方法生成測(cè)試用例,其針對(duì)性差、測(cè)試冗余較多。本文在文獻(xiàn)[8]使用時(shí)序邏輯公式精確刻畫(huà)編譯優(yōu)化方法的基礎(chǔ)上,提出一種面向編譯優(yōu)化的測(cè)試用例自動(dòng)生成方法,利用時(shí)序邏輯公式中出現(xiàn)的關(guān)鍵節(jié)點(diǎn)以及節(jié)點(diǎn)間的時(shí)序關(guān)系,構(gòu)造一個(gè)或多個(gè)滿(mǎn)足優(yōu)化條件的基本塊的關(guān)鍵節(jié)點(diǎn)及節(jié)點(diǎn)間的控制關(guān)系,并結(jié)合實(shí)例詳細(xì)描述了該方法。該方法生成的測(cè)試用例針對(duì)性強(qiáng),適用于多種編譯優(yōu)化的測(cè)試。本文由此改進(jìn)了JTT,很大程度上消除了測(cè)試冗余,提高了測(cè)試效率。下一步工作將集中在生成更為豐富的控制結(jié)構(gòu)和數(shù)據(jù)流信息上。

參考文獻(xiàn):

[1]BOUJARWAH A S, SALEH K. Compiler test case generation me-thods: a survey and assessment[J]. Information and Software Technology, 1997,39(9):617-625.

[2]PURDOM P. A sentence generator for testing parsers[J]. BIT Numerical Mathematics, 1972,12(3):366-375.

[3]JIANG Liyuan, HUANG Guangjun. An automatic system of generating test cases for compiler[J]. Journal of Northwestern Polytechnical University, 1992,10(2):153-158.

[4]BURGESS C J, SAIDI M. The automatic generation of test cases for optimizing Fortran compilers[J]. Information and Software Technology, 1996,38(2):111-119.

[5]KULIAMIN V V, PETRENKO A K. Applying model based testing in different contexts[EB/OL].2002(2004-12-28).http://www.ispras.ru/groups/rv/downloads/Dagstuhl2004_Kuliamin.pdf.

[6]KOSSATCHEV A, PETRENKO A, ZELENOV S, et al.Using model-based approach for automated testing of optimizing compilers: proc.of the International Workshop on Program Understanding[C]. Novosi-birsk, Russia:[s.n.], 2003:81-88.

[7]朱丹楓.一種用于測(cè)試編譯優(yōu)化的程序控制結(jié)構(gòu)生成算法[D].北京:中國(guó)科學(xué)院軟件研究所,2005.

[8]LACEY D. Program transformation using temporal logic specification[D]. Oxford: Oxford University Computing Laboratory, 2003.

[9]CLARKE E M, EMERSON E A, SISTLA A P. Automatic verification of finite-state concurrent systems using temporal logic specifications[J]. ACM Transactions on Programming Languages and Systems, 1986,8(2):244-263.

[10]EMERSON E A, HALPERN J Y. Decision procedures and expressiveness in the temporal logic of branching time[J]. Journal of Computer and System Sciences, 1985,30(1):1-24.

[11]BEN ARI M, MANNA Z, PNUELI A. The temporal logic of bran-ching time[J]. Acta Information, 1983,20:207-226.

[12]KATOEN J P. Principles of model checking[EB/OL]. http://www.cs.auc.dk/~kgl/DAT4F02/KatoenIntro.ps.

注:“本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文”

主站蜘蛛池模板: 91福利免费视频| 国产一区二区精品福利| 国产免费网址| 久久免费视频播放| 无码精品国产VA在线观看DVD| 五月天综合网亚洲综合天堂网| 午夜少妇精品视频小电影| 夜夜爽免费视频| 国产人碰人摸人爱免费视频| 亚洲人成人伊人成综合网无码| 亚洲第一极品精品无码| 中文纯内无码H| 最新亚洲人成网站在线观看| 麻豆精品在线视频| 啊嗯不日本网站| 亚洲无码高清视频在线观看 | 草逼视频国产| 香蕉视频在线精品| 思思99热精品在线| 日韩一区二区在线电影| 91伊人国产| 中文字幕2区| 黄色在线网| 五月天香蕉视频国产亚| 国产本道久久一区二区三区| 91精品最新国内在线播放| 91年精品国产福利线观看久久| 97se亚洲| 日韩精品视频久久| 91丝袜在线观看| 美女内射视频WWW网站午夜| 影音先锋丝袜制服| 欧美一区二区三区不卡免费| 国产欧美中文字幕| 黑人巨大精品欧美一区二区区| 欧美精品不卡| 日韩欧美中文亚洲高清在线| 国产亚洲视频播放9000| 精品91自产拍在线| 久久精品娱乐亚洲领先| 日韩经典精品无码一区二区| 国产日韩欧美一区二区三区在线 | 久久伊人操| 毛片免费视频| 国产成人高清在线精品| 国产白浆在线观看| 亚洲乱强伦| 亚洲天堂成人在线观看| 久久精品电影| 国产成人精品一区二区免费看京| 91精品国产麻豆国产自产在线| 伊人丁香五月天久久综合 | 亚洲欧洲自拍拍偷午夜色| 免费中文字幕一级毛片| 狠狠五月天中文字幕| 91久久偷偷做嫩草影院| 久久99精品久久久久久不卡| 最新国产在线| 免费国产一级 片内射老| 精品欧美一区二区三区久久久| 久草中文网| 国产玖玖玖精品视频| 国产av剧情无码精品色午夜| 久久国产拍爱| 欧美日韩激情在线| 好紧太爽了视频免费无码| 成人无码区免费视频网站蜜臀| 欧美日韩国产综合视频在线观看| 男女男免费视频网站国产| 国产精品太粉嫩高中在线观看| 2021国产精品自拍| 2020国产免费久久精品99| 免费A级毛片无码免费视频| 欧美一区二区三区不卡免费| 欧美一区二区三区香蕉视| 99免费在线观看视频| 国产99欧美精品久久精品久久| 欧美日韩va| 欧美国产综合色视频| JIZZ亚洲国产| 亚洲综合九九| 在线国产毛片手机小视频|