[發明專利]一種基于B/S架構的程序源代碼的評判系統及方法有效
| 申請號: | 201410323762.5 | 申請日: | 2014-07-08 |
| 公開(公告)號: | CN104077227B | 公開(公告)日: | 2017-01-04 |
| 發明(設計)人: | 陳榮;馬凱;劉平月;李輝;高健;陳世峰 | 申請(專利權)人: | 大連海事大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F9/44 |
| 代理公司: | 大連東方專利代理有限責任公司21212 | 代理人: | 楊威,李洪福 |
| 地址: | 116026 *** | 國省代碼: | 遼寧;21 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 架構 程序 源代碼 評判 系統 方法 | ||
1.一種基于B/S架構的程序源代碼的評判系統,包括瀏覽器端和服務器端,其特征在于:
所述瀏覽器端包括管理員單元組和用戶單元組;瀏覽器端用于管理員單元組和用戶單元組實現對其各自對應的信息管理、課程信息管理、任務操作管理的操作以及管理員單元組對用戶單元組各個用戶的用戶信息進行查詢、管理操作,并顯示服務器端對用戶當前測試任務的評判結果;
所述服務器端包括:
信息存取顯示單元,用于對瀏覽器端提交的管理員信息及用戶信息進行數據庫存取和顯示;
任務檢查單元,用于暫時存儲用戶提交的任務代碼,并對代碼能否通過編譯進行檢查;
任務池管理單元,用于管理瀏覽器端提交的任務隊列,即實現定時檢測任務提交情況,獲取任務提交信息,并對用戶提交的任務信息進行存儲管理;
文件系統生成單元,用于生成任務隊列中的隊首任務進行處理所需的所有文件目錄并讀取數據庫中的待測程序,將其復制到規定的目錄下;
腳本生成單元,用于生成執行隊首任務所需的各腳本文件,并存儲于指定的文件目錄下;
程序插裝單元,用于對待測程序進行插裝并運行,將生成的程序執行路徑與測試用例信息存放于指定目錄下;
故障定位單元,用于對待測程序進行故障定位,并將定位結果進行排序后存儲于數據庫中;
覆蓋率單元,用于獲取待測程序運行過程中的覆蓋率信息;
打分單元,用于依據評分標準對當前用戶任務完成情況進行評估打分,并將計算結果存儲于后臺數據庫中,并由任務池管理單元刪除該隊首任務;
所述任務池管理單元獲取到任務提交信息后,任務進入檢測狀態,由文件系統生成單元生成任務對應的文件系統與目錄,并將待測程序復制到生成的目錄下,由腳本生成單元將執行待測程序所需的指令生成腳本文件同時由程序插裝單元對待測程序進行插裝并運行,生成各測試用例的執行路徑與測試用例信息,所述故障定位單元根據測試用例運行產生的路徑覆蓋信息使用故障定位算法進行故障定位,計算出語句的可疑度,按照可疑度的大小進行排序,并由覆蓋率單元統計程序覆蓋信息;打分單元依據評分標準計算隊首任務的完成分數;上述語句可疑度信息、覆蓋率信息和任務分數經信息存取顯示單元反饋到瀏覽器端后生成結果報告,并在網頁頁面上顯示評判結果。
2.根據權利要求1所述的一種基于B/S架構的程序源代碼的評判系統,其特征在于:所述的程序插裝單元是通過JTB對待測程序進行編譯,生成抽象語法樹,然后對抽象語法樹進行插裝并生成插裝后的源文件,通過結合測試用例運行插裝后的文件,生成所述的故障定位單元所需要的信息。
3.根據權利要求1所述的一種基于B/S架構的程序源代碼的評判系統,其特征在于:所述故障定位單元采用的是基于覆蓋信息統計的Tarantula算法和Safla算法,所需信息為測試用例運行產生的路徑覆蓋信息和測試用例運行的成功與否信息,然后統計語句在成功執行和錯誤執行的出現次數,算出每個節點的故障可疑度,并轉化成JSON數據格式存儲于數據庫中。
4.根據權利要求1所述的一種基于B/S架構的程序源代碼的評判系統,其特征在于:所述的覆蓋率單元通過Emma算法在待測程序執行過程中獲取待測程序的執行路徑并計算得出程序的覆蓋率以及各函數的覆蓋率,以XML文件的格式存儲于指定文件目錄下;在瀏覽器端請求結果報告頁面時,信息存取顯示單元解析該XML文件并轉化為JSON數據的格式傳至瀏覽器,并以表格的形式進行顯示。
5.根據權利要求1所述的一種基于B/S架構的程序源代碼的評判系統,其特征在于:
所述管理員單元組,用于為管理員實現信息管理、測試任務編譯、下達的操作,包括:
個人信息管理單元,用于管理員實現對個人信息的管理操作;
課程信息管理單元,用于管理員實現對課程信息的管理操作;
任務操作單元,用于管理員實現在相應課程下創建新的測試任務操作以及對已有任務的相關信息進行管理操作;
用戶信息管理單元,用于管理員實現對各個用戶的用戶信息進行查詢、管理操作;
所述用戶單元組包括:
個人信息管理單元,用于各個用戶實現對相應的個人信息的管理操作;
課程信息管理單元,用于各個用戶實現對相應的課程信息的管理操作;
任務操作單元,用于各個用戶實現查看相應的任務信息,對未提交的任務進行提交,并對提交完成的任務查看其診斷反饋信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于大連海事大學,未經大連海事大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410323762.5/1.html,轉載請聲明來源鉆瓜專利網。





