国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種軟件測試預(yù)言智能化生成方法與流程

      文檔序號:40385590發(fā)布日期:2024-12-20 12:08閱讀:5來源:國知局
      一種軟件測試預(yù)言智能化生成方法與流程

      本發(fā)明涉及軟件預(yù)測,更具體的說是涉及一種軟件測試預(yù)言智能化生成方法。


      背景技術(shù):

      1、測試預(yù)言(test?oracle)是一種判斷待測程序在給定測試輸入下的執(zhí)行結(jié)果是否符合預(yù)期的機(jī)制和方法。在軟件測試中,測試預(yù)言的作用至關(guān)重要,測試預(yù)言的質(zhì)量直接影響測試活動有效性和軟件質(zhì)量。

      2、現(xiàn)有測試預(yù)言生成方法主要分為基于軟件形式化規(guī)格說明或形式化模型(例如狀態(tài)機(jī)或時(shí)序邏輯規(guī)范等)的測試預(yù)言生成方法、基于各種軟件制品(例如軟件需求和設(shè)計(jì)文檔、軟件執(zhí)行屬性信息等)的測試預(yù)言生成方法、基于常識或隱含的知識生成測試預(yù)言這三類方法。第一類方法需要軟件開發(fā)人員或測試人員給出軟件的形式化規(guī)格說明,人工參與工作量較大,形式化規(guī)格說明缺乏以及程序行為描述不全面是該類方法面臨的嚴(yán)重挑戰(zhàn)。第二類研究克服了第一類研究面臨的挑戰(zhàn),正在成為一個活躍的研究方向,主要研究包括基于規(guī)格說明或編程接口挖掘的方法、基于程序文檔的挖掘方法、蛻變測試、基于源碼的靜態(tài)和動態(tài)分析方法以及基于機(jī)器學(xué)習(xí)的方法等,該類測試預(yù)言的生成方法包括全自動的方法或人工輔助的半自動化方法,其中半自動化方法較多。第三類應(yīng)用領(lǐng)域較窄,僅針對特種類型或特定的應(yīng)用范圍的軟件。

      3、目前雖然研究人員已提出了各種自動化測試輸入生成技術(shù),但還存在智能化程度低、難以自動驗(yàn)證測試結(jié)果等問題。

      4、因此,如何提供一種智能化程度高、可以自動驗(yàn)證測試結(jié)果的測試預(yù)言智能化生成方法是本領(lǐng)域技術(shù)人員亟需解決的問題。


      技術(shù)實(shí)現(xiàn)思路

      1、有鑒于此,本發(fā)明提供了一種軟件測試預(yù)言智能化生成方法,智能化程度高、可以自動驗(yàn)證測試結(jié)果。

      2、為了實(shí)現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案:

      3、一種軟件測試預(yù)言智能化生成方法,包括:

      4、s1:基于lstm網(wǎng)絡(luò)和自注意力機(jī)制構(gòu)建循環(huán)神經(jīng)網(wǎng)絡(luò)模型;

      5、s2:基于被測軟件測試用例數(shù)據(jù)訓(xùn)練循環(huán)神經(jīng)網(wǎng)絡(luò)模型;

      6、s3:將待測軟件測試用例數(shù)據(jù)輸入至訓(xùn)練后的循環(huán)神經(jīng)網(wǎng)絡(luò)模型中,輸出預(yù)言信息。

      7、優(yōu)選的,基于lstm網(wǎng)絡(luò)和自注意力機(jī)制構(gòu)建循環(huán)神經(jīng)網(wǎng)絡(luò)模型,具體包括:

      8、1)輸入層:將被測軟件測試用例數(shù)據(jù),通過多元回歸分析進(jìn)行指標(biāo)篩選,再將數(shù)據(jù)通過輸入層輸入到模型中,設(shè)輸入數(shù)據(jù)長度為i,輸入向量x=[x1,x2,x3,…,xi]t;

      9、2)lstm網(wǎng)絡(luò)層:經(jīng)過多元回歸分析篩選指標(biāo)后的數(shù)據(jù)輸入至lstm網(wǎng)絡(luò)層,經(jīng)過內(nèi)部激活函數(shù)進(jìn)行非線性變換從而學(xué)習(xí)不同指標(biāo)間關(guān)系,采用兩層lstm網(wǎng)絡(luò)結(jié)構(gòu),輸出向量為a=[a1,a2,a3,…,ai]t;

      10、3)自注意力機(jī)制層:自注意力機(jī)制層的輸入為lstm網(wǎng)絡(luò)層的輸出向量a,基于輸出向量a計(jì)算query值、key值和value值,并求和得到自注意力層的輸出向量b:

      11、qi=wqai

      12、ki=wkai

      13、vi=wvai

      14、

      15、其中,wq、wk、wv是可學(xué)習(xí)的參數(shù),dk為輸入特征維度,a1,a2,a3,…,ai是輸入的特征值;

      16、4)輸出層:將自注意力層的輸出向量b作為輸出層的輸入向量,輸出層通過全連接層得到預(yù)測值y=[y1,y2,y3,…,yi]t。

      17、優(yōu)選的,基于被測軟件測試用例數(shù)據(jù)訓(xùn)練循環(huán)神經(jīng)網(wǎng)絡(luò)模型,具體包括:

      18、步驟2.1:將被測軟件歷史測試用例庫里的測試用例數(shù)據(jù)作為訓(xùn)練樣本,對循環(huán)神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練;

      19、步驟2.2:lstm網(wǎng)絡(luò)訓(xùn)練算法采用反向傳播算法,前向計(jì)算每個神經(jīng)元的輸出值;

      20、步驟2.3:反向計(jì)算每個神經(jīng)元的誤差項(xiàng)值,lstm誤差項(xiàng)的反向傳播包括兩個方向,即沿時(shí)間的反向傳播,從當(dāng)前t時(shí)刻開始,計(jì)算每個時(shí)刻的誤差項(xiàng),另一個是將誤差項(xiàng)向上一層傳播;

      21、步驟2.4:根據(jù)相應(yīng)的誤差項(xiàng)計(jì)算每個權(quán)重的梯度;

      22、步驟2.5:若達(dá)到設(shè)定的訓(xùn)練目標(biāo),包括迭代次數(shù)和誤差精度,結(jié)束訓(xùn)練,否則,繼續(xù)訓(xùn)練循環(huán)神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)。

      23、優(yōu)選的,還包括:

      24、s4:將輸出的預(yù)言信息與實(shí)際預(yù)期值進(jìn)行比較,若誤差小于設(shè)定的誤差精度,則判定當(dāng)前測試軟件通過,否則判定當(dāng)前測試軟件失敗。

      25、優(yōu)選的,在數(shù)據(jù)輸入至循環(huán)神經(jīng)網(wǎng)絡(luò)模型前進(jìn)行預(yù)處理,具體包括:

      26、將待測軟件中非數(shù)值型數(shù)據(jù)轉(zhuǎn)換為數(shù)值型數(shù)據(jù)。

      27、經(jīng)由上述的技術(shù)方案可知,與現(xiàn)有技術(shù)相比,本發(fā)明公開提供了一種軟件測試預(yù)言智能化生成方法,采用深度學(xué)習(xí)方法進(jìn)一步提高測試預(yù)言生成的準(zhǔn)確性,提升軟件測試效率和智能化水平,解決了現(xiàn)有測試技術(shù)難以自動驗(yàn)證測試結(jié)果的問題,實(shí)現(xiàn)軟件智能化測試驗(yàn)證。



      技術(shù)特征:

      1.一種軟件測試預(yù)言智能化生成方法,其特征在于,包括:

      2.根據(jù)權(quán)利要求1所述的一種軟件測試預(yù)言智能化生成方法,其特征在于,基于lstm網(wǎng)絡(luò)和自注意力機(jī)制構(gòu)建循環(huán)神經(jīng)網(wǎng)絡(luò)模型,具體包括:

      3.根據(jù)權(quán)利要求1所述的一種軟件測試預(yù)言智能化生成方法,其特征在于,基于被測軟件測試用例數(shù)據(jù)訓(xùn)練循環(huán)神經(jīng)網(wǎng)絡(luò)模型,具體包括:

      4.根據(jù)權(quán)利要求1所述的一種軟件測試預(yù)言智能化生成方法,其特征在于,還包括:

      5.根據(jù)權(quán)利要求1所述的一種軟件測試預(yù)言智能化生成方法,其特征在于,在數(shù)據(jù)輸入至循環(huán)神經(jīng)網(wǎng)絡(luò)模型前進(jìn)行預(yù)處理,具體包括:


      技術(shù)總結(jié)
      本發(fā)明公開了一種軟件測試預(yù)言智能化生成方法,包括:S1:基于LSTM網(wǎng)絡(luò)和自注意力機(jī)制構(gòu)建循環(huán)神經(jīng)網(wǎng)絡(luò)模型;S2:基于被測軟件測試用例數(shù)據(jù)訓(xùn)練循環(huán)神經(jīng)網(wǎng)絡(luò)模型;S3:將待測軟件測試用例數(shù)據(jù)輸入至訓(xùn)練后的循環(huán)神經(jīng)網(wǎng)絡(luò)模型中,輸出預(yù)言信息;S4:將輸出的預(yù)言信息與實(shí)際預(yù)期值進(jìn)行比較,若誤差小于設(shè)定的誤差精度,則判定當(dāng)前測試軟件通過,否則判定當(dāng)前測試軟件失敗。采用深度學(xué)習(xí)方法進(jìn)一步提高測試預(yù)言生成的準(zhǔn)確性,提升軟件測試效率和智能化水平,解決了現(xiàn)有測試技術(shù)難以自動驗(yàn)證測試結(jié)果的問題,實(shí)現(xiàn)軟件智能化測試驗(yàn)證。

      技術(shù)研發(fā)人員:王栓奇,宇航,劉釗,張?jiān)婎?曹瑞臣
      受保護(hù)的技術(shù)使用者:中國兵器工業(yè)信息中心
      技術(shù)研發(fā)日:
      技術(shù)公布日:2024/12/19
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1