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

        ?

        智能優(yōu)化算法自動生成計算機軟件測試數(shù)據(jù)的方法

        2018-03-29 03:04:28
        信陽農(nóng)林學院學報 2018年1期
        關鍵詞:測試數(shù)據(jù)軟件測試度量

        任 群

        (亳州學院 電子與信息工程系,安徽 亳州236800)

        隨著軟件應用規(guī)模越來越大,復雜程度越來越高,軟件的質量和可靠性變得尤為重要[1-2],計算機軟件的數(shù)據(jù)測試也成了很多人關注的焦點[3-4]。在計算機軟件的使用過程中,計算機軟件本身的缺陷將會影響計算機的正常使用。計算機軟件缺陷在軟件開發(fā)的過程中是客觀存在的[5-6],如果不能及時發(fā)現(xiàn)軟件的缺陷,就有可能導致計算機軟件無法使用,甚至產(chǎn)生無法彌補的嚴重后果[7]。

        基于上述問題,本文提出了基于智能優(yōu)化算法的計算機軟件測試數(shù)據(jù)自動生成方法。該方法能夠在軟件測試過程中自動生成測試數(shù)據(jù),并自動對計算機軟件測試數(shù)據(jù)進行優(yōu)化測試。最后,對提出的方法使用Eclipse標準數(shù)據(jù)進行數(shù)據(jù)測試,結果表明,該方法可以提高計算機軟件測試數(shù)據(jù)的自動生成效率,有利于改善軟件的質量。

        1 智能優(yōu)化算法自動生成的測試數(shù)據(jù)模型

        軟件測試的目的是及時發(fā)現(xiàn)軟件中存在的缺陷,并對其進行修正。在利用智能算法自動生成測試數(shù)據(jù)的過程中,需要從軟件模塊中提取度量元數(shù)據(jù)。利用回歸、分類、聚類等方法找出度量元及其測試數(shù)據(jù)之間的相互聯(lián)系,以相互聯(lián)系為基準,對其建立測試數(shù)據(jù)模型,再通過基本模型對軟件中的待測數(shù)據(jù)進行測試(如圖1所示)。本文以智能優(yōu)化算法自動生成的加權測試數(shù)據(jù)為基準,對計算機軟件測試數(shù)據(jù)進行不同算法的對比實驗研究。

        圖1 計算機軟件測試數(shù)據(jù)模型

        2 智能優(yōu)化算法自動生成的測試數(shù)據(jù)方法

        2.1 計算機軟件測試數(shù)據(jù)模型

        本文中借鑒了Stacking技術,這是一種在行業(yè)中知名的集成推理技術。在Stacking框架中含有2層分類器,level-0表示的是基分類器,level-1表示的是元分類器。在軟件數(shù)據(jù)測試中,第一步是對數(shù)據(jù)集進行預測,第二步是把基分類器中輸出的結果作為輸入數(shù)據(jù)通過元分類器進行輸入,第三步,將生成的數(shù)據(jù)集作為新推理器的訓練數(shù)據(jù)集,再利用數(shù)據(jù)測試算法對其進行測試。采用相對復雜的智能化算法進行計算機軟件測試數(shù)據(jù)模型建立,利用此方法把屬性子集應用到軟件測試數(shù)據(jù)的建模之中,在數(shù)據(jù)丟失最小化的前提下提高模型的性能,以便減少測試時間。

        定義1:屬性A的數(shù)據(jù)增益率可用IGR(A)=IG(A)/I(A)進行表示,其中,IG(A)表示的是屬性A的數(shù)據(jù)增益。IG(A)=entropy(S)-entropy(S,A),表示的是劃分之前數(shù)據(jù)的熵和劃分之后數(shù)據(jù)的熵的差值。

        設訓練集S={S1,S2,L,SN},在表達式中,Si含有一個屬性向量,該向量可以表示為Xi=(xi1,xi2,L,xip),同時Si還含有一個分類標簽,該分類標簽可以表示為ci∈C={c1,c2,L,cm}。式中,Xi表示的是含有度量向量的測試數(shù)據(jù)是否存在缺陷的標記,ci則對測試數(shù)據(jù)是否存在缺陷進行標記。如果設pi是S中屬于類別i的比例,數(shù)據(jù)熵則用下式表示:

        任何一個屬性都有幾個不同的取值,設Values(A)表示的是A中取不同值的集合,Sv表示的是集合S中所有屬性A取值為v的集合,則可以得到:

        本式表示的是基于按A劃分后對S的元組準確分類還需要的數(shù)據(jù)量。

        引入內(nèi)在數(shù)據(jù)I表示的是訓練集S用屬性A進行劃分后的數(shù)據(jù)集S',若進一步劃分,數(shù)據(jù)總量用下式表示:

        數(shù)據(jù)增益率本質上是一種補償措施,它可以有效解決數(shù)據(jù)增益中存在的問題。

        2.2 用智能優(yōu)化算法生成測試數(shù)據(jù)

        獲取計算機軟件的測試數(shù)據(jù)時,應該確定合適的映射規(guī)則。二進制編碼就是比較好的映射形式,它具有表達簡潔、操作方便等諸多優(yōu)點,可以提高智能優(yōu)化算法的計算效率。根據(jù)數(shù)據(jù)類型的不同,所對應的編碼映射也是不一樣的。在進行計算機軟件數(shù)據(jù)測試時可能會對其他參數(shù)產(chǎn)生影響。因此,需要將每個輸入?yún)?shù)獨立的編碼,使其成為一個二進制位的參數(shù),之后再將全部的參數(shù)連接起來,組成一個獨立的個體,此處稱之為多參數(shù)級聯(lián)編碼。具體如下:

        級連之前:X1,X2,……,XN

        b11b12…b1m,b21b22…b2m,……,bn1bn2…bnm

        級連之后:b11b12…b1m,b21b22…b2m,bn1bn2… bnm

        在進行解碼時應該先從總碼中切取n段,每段長度為m的數(shù)據(jù)鏈,再分別進行解碼。

        在本文中,采用智能優(yōu)化轉化公式:

        式中,θ為旋轉角。

        采用智能優(yōu)化算法生成測試數(shù)據(jù)的步驟如下:

        (1)初始化個體:掃描給定的路徑,找出需要生成測試數(shù)據(jù)的變量,并為每個變量賦隨機的0,1串,按照多參數(shù)級聯(lián)編碼原則,組成個體。

        (2)計算適值函數(shù)值:根據(jù)構造的適值函數(shù),分別計算每組變量的適值函數(shù)值,若滿足終止條件,則轉(4)步。

        (3)改進個體:若沒有滿足條件的個體,則進行以下運算:

        ①按適值函數(shù)值選擇下一代個體。

        ②解的交叉:從產(chǎn)生的個體中隨機選擇兩個個體進行單點交叉,得到新個體,重復該步驟,直到所有個體均被選中為止。

        ③解的變異:在交叉后的個體中隨機加入一些變異,產(chǎn)生新個體。

        ④轉到第(2)步。

        (4)拆分滿足條件的個體:把每個變量對應的0,1串轉換成十進制數(shù),這些數(shù)據(jù)即為生成的測試數(shù)據(jù)。

        (5)算法結束。

        2.3 軟件測試數(shù)據(jù)評價指標

        對于本文設計的計算機軟件測試數(shù)據(jù)評價指標主要有(area under ROC cure)、F-度量、精確度等。對于測試的結果可以采用表1所示的矩陣進行表示:

        表1 評價指標

        (1)精確度:precision=TP/(TP+FP);

        (2)召回率:recall=TP/(TP+FN);

        (3)F度量:F_measure=2×precision×recall/(precision+recall);

        (4)AUC:ROC曲線下面積。ROC曲線最初是用來對收益與成本之間的權衡關系進行描述的。AUC在區(qū)間[0,1]中波動,若模型越好,則面積越大(即AUC的值越大)。針對文中的軟件測試數(shù)據(jù),使用成本優(yōu)化速度(Cost optimization speed, COS)作為評價指標,利用運算效率(Operational efficiency,OE)進行指標評價。

        3 實驗結果與分析

        3.1 實驗準備

        本實驗PC機的硬件條件是:Intel Core i3-4130 3.40GHzCPU,4GB內(nèi)存。使用計算機軟件為Eclipse,外部依賴項是weka.jar。實驗數(shù)據(jù)主要來源于Eclipse標準數(shù)據(jù),在這些文件中,有6個是ARFF格式的文件,這些文件不但收集了度量元,還收集了缺陷數(shù)目,在數(shù)據(jù)中,所包含的度量元包括以下四種:

        (1)Name:表示的是數(shù)據(jù)對應的包名或文件名;

        (2)Pre-release Defects:表示的是版本發(fā)布前半年內(nèi)收集的缺陷數(shù)目;

        (3)Post-release Defects:表示的是版本發(fā)布后半年內(nèi)收集的缺陷數(shù)目;

        (4)復雜性度量:指的是CK度量元與面向對象度量元;

        (5)抽象語法樹結構——抽象語法樹的結點度量。

        File級別與Package級別的數(shù)據(jù),在結構上是有差異的。正因為這樣,F(xiàn)ile級別的數(shù)據(jù)就只能測試File級別數(shù)據(jù)訓練的模型,Package級別的亦是如此。我們使用File/Package中的數(shù)據(jù)進行測試。

        3.2 實驗結果

        表2 不同的智能優(yōu)化算法軟件性能檢測對比

        先對數(shù)據(jù)進行一次測試,因為實驗的結果太多,同時效果特別相似,因此只列出了一部分實驗結果,見表2。為了方便表示,本文算法使用AGIOA表示,決策樹算法使用RF來表示,邏輯回歸使用LR表示,神經(jīng)網(wǎng)絡使用NN表示。

        觀察表2可知,邏輯回歸算法的主要優(yōu)勢是測試精度高,但劣勢也比較明顯,就是召回率過低。決策樹算法相對來說召回率比較高,但是測試精度并不高。神經(jīng)網(wǎng)絡算法在測試精度、召回率都不是很理想。而與其他三種算法相比,AGIOA算法在各方面均表現(xiàn)出了優(yōu)越性。通常,測試數(shù)據(jù)模型越復雜,其綜合指標越讓人滿意,但其耗費的時間也將越多。對于簡單的測試,18次的實驗,只要幾分鐘就能搞定;如果是算法過于復雜,18次實驗則需要幾個小時才能完成。這恰恰可以證實評價指標不同,算法也不會相同。

        基于智能優(yōu)化算法自動生成測試數(shù)據(jù),將測試結果從大到小地進行加權計算,從而繪制出COS曲線與OE曲線,如圖2所示。在COS評價中,計算機軟件測試模型由于加入了回歸度量,因此數(shù)據(jù)測試能力得到了提高。OE指標與單個算法測試比較相似,但以后的優(yōu)化比較困難,原因是3種案例所使用的軟件測試數(shù)據(jù)的自動生成算法原理幾乎一致,因此很難為加權模型的數(shù)據(jù)測試提供有價值的數(shù)據(jù)。凡是采用智能優(yōu)化算法自動生成算法的OE曲線,其斜率都接近1,換句話說,就是接近隨機加權的結果。

        圖2 智能優(yōu)化算法自動生成的軟件數(shù)據(jù)部分測試結果

        4 總結

        本文提出了基于智能優(yōu)化算法的自動生成計算機軟件測試數(shù)據(jù)的方法,該方法對所采集到的數(shù)據(jù)進行快速測試,將測試的結果與樣本數(shù)據(jù)相結合,從而形成新的度量元,經(jīng)過度量元處理后得到新數(shù)據(jù)。再利用智能優(yōu)化算法對新的數(shù)據(jù)進行模型構建,所得的測試模型,經(jīng)試驗表明:該方法提高了軟件測試數(shù)據(jù)生成效率,是一種較為理想的軟件測試數(shù)據(jù)生成算法。

        [1] Jiang, Z. M., & Hassan, A. A survey on load testing of large-scale software systems[J].IEEE Transactions on Software Engineering, 2015,41(11):1091-1118.

        [2] Wang, M., Jia, H., Sugumaran, V., Ran, W., & Liao, J. A web-based learning system for software test professionals[J].IEEE Transactions on Education, 2011,54(2):263-272.

        [3] Cotroneo, D., Pietrantuono, R., & Russo, S. Relai testing: a technique to assess and improve software reliability[J].IEEE Transactions on Software Engineering, 2016,42(5):452-475.

        [4] Bohme, M., & Paul, S. A probabilistic analysis of the efficiency of automated software testing[J].IEEE Transactions on Software Engineering, 2016,42(4):345-360.

        [5] Carlo, S. D., Prinetto, P., & Savino, A. Software-based self-test of set-associative cache memories[J].IEEE Transactions on Computers, 2011,60(7):1030-1044.

        [6] Garousi, V., & Felderer, M. Worlds apart: industrial and academic focus areas in software testing[J].IEEE Software, 2017,34(5):38-45.

        [7] Xu, J., & Xu, P. The research of memory fault simulation and fault injection method for bit software test[J]. IEEE, 2012,7(1):718 - 722.

        猜你喜歡
        測試數(shù)據(jù)軟件測試度量
        有趣的度量
        模糊度量空間的強嵌入
        基于OBE的軟件測試課程教學改革探索
        計算機教育(2020年5期)2020-07-24 08:53:20
        迷向表示分為6個不可約直和的旗流形上不變愛因斯坦度量
        測試數(shù)據(jù)管理系統(tǒng)設計與實現(xiàn)
        EXCEL和VBA實現(xiàn)軟件測試記錄管理
        電子制作(2018年16期)2018-09-26 03:27:18
        關于軟件測試技術應用與發(fā)展趨勢研究
        電子測試(2017年15期)2017-12-18 07:19:20
        基于自適應粒子群優(yōu)化算法的測試數(shù)據(jù)擴增方法
        計算機應用(2016年9期)2016-11-01 17:57:12
        軟件測試工程化模型及應用研究
        空間co-location挖掘模式在學生體能測試數(shù)據(jù)中的應用
        體育科技(2016年2期)2016-02-28 17:06:21
        日韩女优在线一区二区| 国产又色又爽无遮挡免费| 亚洲欧美国产日韩字幕| 亚洲性爱区免费视频一区| 日本a级片一区二区三区| 激情内射亚洲一区二区三区| 亚洲av无码不卡久久| 日本中文字幕不卡在线一区二区| 中文字幕国产精品专区| 国产精品女主播福利在线| 精品国产日韩亚洲一区在线| 国产激情久久久久久熟女老人| 亚洲毛片αv无线播放一区| 18无码粉嫩小泬无套在线观看| 狠狠色狠狠色综合网老熟女| 中文字幕亚洲中文第一| 色综合久久久久综合体桃花网| 艳妇臀荡乳欲伦交换在线播放| 九九99国产精品视频| 久久精品国产亚洲av沈先生| 风韵丰满熟妇啪啪区老熟熟女| 三级4级全黄60分钟| 国产成人亚洲合集青青草原精品| 看国产亚洲美女黄色一级片| 看久久久久久a级毛片| 亚洲另类自拍丝袜第五页| 东京热加勒比日韩精品| 国产91久久麻豆黄片| 国产成人a人亚洲精品无码| 国产免费AV片在线看| 麻豆视频在线观看免费在线观看| 少妇性俱乐部纵欲狂欢少妇| 国产呦系列呦交| 最新欧美一级视频| 女人18毛片aa毛片免费| 不卡一卡二卡三乱码免费网站| 在线免费黄网| 青青草最新在线视频观看| 完整版免费av片| www国产亚洲精品久久网站| 99国产超薄丝袜足j在线观看|