日韩在线一区二区三区,日本午夜一区二区三区,国产伦精品一区二区三区四区视频,欧美日韩在线观看视频一区二区三区 ,一区二区视频在线,国产精品18久久久久久首页狼,日本天堂在线观看视频,综合av一区

[發明專利]一種面向solidity語言的測試用例生成方法有效

專利信息
申請號: 201910341716.0 申請日: 2019-04-26
公開(公告)號: CN110096439B 公開(公告)日: 2020-07-14
發明(設計)人: 張鵬程;于佳男;吉順慧;肖鋒 申請(專利權)人: 河海大學
主分類號: G06F11/36 分類號: G06F11/36;G06N3/12
代理公司: 南京蘇高專利商標事務所(普通合伙) 32204 代理人: 孟紅梅
地址: 211100 江*** 國省代碼: 江蘇;32
權利要求書: 查看更多 說明書: 查看更多
摘要:
搜索關鍵詞: 一種 面向 solidity 語言 測試 生成 方法
【權利要求書】:

1.一種面向solidity語言的測試用例生成方法,其特征在于,包括如下步驟:

(1)根據solidity語言的變量類型、流程控制語句、函數體結構、內部函數require以及函數修改器的使用對solidity語言實現的待測試智能合約程序進行分析得到對應的控制流圖CFG;

(2)根據步驟(1)的CFG圖遍歷各節點信息,判斷存在uint型變量使用的節點是否存在整數溢出錯誤的安全性問題,若存在,則將存在整數溢出錯誤的節點標記;

(3)根據步驟(1)的CFG圖遍歷各節點信息,統計出程序中所有數值型變量的定義-使用對,記為dup,且若步驟(2)中判斷結果為存在整數溢出錯誤,則將包含步驟(2)中的標記節點存在的變量的定義-使用對統計出來,記為dup’;

(4)根據步驟(3)統計出的dup,針對程序中的所有數值型變量隨機生成初始的包含若干組測試用例的測試用例集;測試用例的組數根據遺傳算法中的種群大小確定;

(5)設計遺傳算法中的適應度函數用于選取較優的測試用例以驅動算法執行;其中測試用例的適應度值為測試用例覆蓋的dup的數量與覆蓋的涉及到整數溢出錯誤的dup’數量的加權和與所有dup的數量與所有dup’數量加權和的比值;

(6)根據步驟(5)中的適應度函數以及算法的執行界限,求得步驟(4)中初始測試用例的適應度值,開始遺傳算法迭代執行,得到算法內最優結果。

2.根據權利要求1所述的面向solidity語言的測試用例生成方法,其特征在于,所述步驟(1)中分析待測試程序的CFG圖時,考慮程序中地址型變量的使用,考慮由地址變量引出無符號整型變量的定義;考慮程序中require和assert條件判斷語句的使用,將require語句作為一個if條件結構語句進行處理;將函數修改器看作是函數調用的一種形態,遇到函數體時,首先分析該函數是否使用了函數修改器,若使用了函數修改器則先轉入函數修改器,根據函數修改器內容進行節點間的連接關系轉移。

3.根據權利要求1所述的面向solidity語言的測試用例生成方法,其特征在于,所述步驟(2)中包括如下步驟:

(21)根據步驟(1)得到的CFG分析程序中是否存在整數溢出錯誤,具體為:遍歷CFG圖節點,對于存在uint型變量使用的節點,其中變量使用包括執行加、減、乘或除計算,判斷在變量使用節點前是否已有對相應變量操作結果進行溢出判斷的語句節點,若沒有,則判定程序會出現整數溢出錯誤;

(22)若存在整數溢出錯誤,對CFG中涉及到引發整數溢出錯誤的變量操作節點進行標注。

4.根據權利要求3所述的面向solidity語言的測試用例生成方法,其特征在于,所述步驟(3)中包括如下步驟:

(31)根據CFG圖,逐節點分析語句信息,找到程序中存在的數值型變量的定義節點;

(32)針對步驟(31)中找到的每一個變量的定義節點,找到其對應的所有使用節點;

(33)結合步驟(31)、(32),得到程序中存在的變量的定義-使用對:dup=(d,u,v),計算其總數量,記為n;其中v表示某一變量,d表示v的某一定義節點,u表示v的某一使用節點;

(34)結合步驟(22)與步驟(31)、(32)的內容得到存在整數溢出問題的變量定義-使用對,這里用dup’表示,計算其總數量,記為m,若步驟(22)中結果為沒有整數溢出問題,即未做標記,則此處m統計值為0。

5.根據權利要求1所述的面向solidity語言的測試用例生成方法,其特征在于,所述步驟(4)中針對程序中的所有數值型變量隨機生成初始的包含4組測試用例的測試用例集。

6.根據權利要求1所述的面向solidity語言的測試用例生成方法,其特征在于,所述步驟(5)中,適應度函數公式其中pi表示第i個測試用例覆蓋的dup的數量,qi表示第i個測試用例覆蓋的涉及到整數溢出錯誤的dup’數量,n表示程序中所有dup的數量,m表示程序中所有涉及到整數溢出錯誤的dup’數量,ε為權重參數,0ε1。

下載完整專利技術內容需要扣除積分,VIP會員可以免費下載。

該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于河海大學,未經河海大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服

本文鏈接:http://www.szxzyx.cn/pat/books/201910341716.0/1.html,轉載請聲明來源鉆瓜專利網。

×

專利文獻下載

說明:

1、專利原文基于中國國家知識產權局專利說明書;

2、支持發明專利 、實用新型專利、外觀設計專利(升級中);

3、專利數據每周兩次同步更新,支持Adobe PDF格式;

4、內容包括專利技術的結構示意圖流程工藝圖技術構造圖

5、已全新升級為極速版,下載速度顯著提升!歡迎使用!

請您登陸后,進行下載,點擊【登陸】 【注冊】

關于我們 尋求報道 投稿須知 廣告合作 版權聲明 網站地圖 友情鏈接 企業標識 聯系我們

鉆瓜專利網在線咨詢

周一至周五 9:00-18:00

咨詢在線客服咨詢在線客服
tel code back_top
主站蜘蛛池模板: 国产另类一区| 97人人澡人人添人人爽超碰| 亚洲乱亚洲乱妇50p| 日本激情视频一区二区三区| 日韩国产不卡| 狠狠色丁香久久综合频道| 国产乱xxxxx97国语对白| 亚洲欧美另类久久久精品2019| 欧美一区二区久久 | 国产盗摄91精品一区二区三区| 亚洲无人区码一码二码三码| 国产精选一区二区| 午夜av电影网| 日韩亚洲精品视频| 热久久国产| 欧美日韩一区在线视频| 一级午夜影院| 欧美一区二区三区激情在线视频| 亚洲乱视频| 天摸夜夜添久久精品亚洲人成| 日韩中文字幕亚洲精品欧美| 91国偷自产中文字幕婷婷| 亚洲免费精品一区二区| 国产亚洲精品精品国产亚洲综合| 中文字幕日本精品一区二区三区| 国产乱人伦偷精品视频免下载 | 国产一区二区在| 国产精品自产拍在线观看桃花| 九九精品久久| 国产午夜精品一区二区理论影院| 日本一区二区免费电影| 激情久久一区二区三区| av毛片精品| 欧美国产精品久久| 欧美系列一区| 欧美一级不卡| 波多野结衣女教师30分钟| 亚洲精品国产精品国自| 国产白嫩美女在线观看| 91精品国产91热久久久做人人| 欧美黄色片一区二区| 综合在线一区| 综合久久一区二区三区| 国产一级二级在线| 亚洲精品卡一| 色一情一乱一乱一区99av白浆| 岛国黄色av| 一二三区欧美| 国产一区二区国产| 国产性生交xxxxx免费| av午夜电影| 狠狠色噜噜狠狠狠合久| 亚洲精品91久久久久久| 久精品国产| 免费久久一级欧美特大黄| 久久99国产视频| 午夜影院5分钟| 欧美日韩中文字幕三区| 欧美中文字幕一区二区三区| 久久精品亚洲一区二区三区画质| 欧美午夜羞羞羞免费视频app| 亚洲国产精品入口| 91精品高清| 久久二区视频| 国产精品久久久久精| 国产一区二三| 丰满少妇在线播放bd日韩电影| 波多野结衣女教师30分钟| 精品一区二区三区中文字幕| 波多野结衣女教师30分钟| 欧美精选一区二区三区| 国产理论一区| 亚洲欧洲一区二区| 欧美日韩一区二区高清| 在线观看v国产乱人精品一区二区| 午夜精品在线播放| 福利片91| 国产精品久久久久久亚洲调教| 国产三级一区二区| 91麻豆文化传媒在线观看| 麻豆精品久久久| 国产婷婷色一区二区三区在线|