助力「探月工程」的單元測試工具可10倍提公升測試效率

2021-09-24 06:27:16 字數 1140 閱讀 1165

引言:上海控安自主研發國內首款單元測試用例智慧型設計工具,已用於探月工程「嫦娥三期」及軌道交通等領域,可10倍提公升測試效率。

近年來,隨著物聯網技術、移動技術的發展,嵌入式軟體的應用越來越廣。保證軟體可靠性和安全性的需求也日益增大。在軟體功能安全測試中,單元測試往往能夠審查**中潛在的邏輯錯誤及隱含的執行時錯誤,進而保障**質量。尤其在高安全領域中,不同行業對單元測試均有相應的要求。因此,編寫出符合規範的測試用例成為一項重要且繁重的工作。

當前的單元測試主要通過人工編寫測試用例來實現,並借助testbed等第三方工具來管理、執行測試用例。對於不同的覆蓋準則而言,人工編寫用例需要花費大量的人力成本及時間成本,尤其對 mc/dc覆蓋而言,人工編寫效率更為低下。據調查,對於測試人員而言,通常每天可以編寫5-8個函式的測試用例,這使得軟體測試週期較長,無法跟上日益加快的軟體研發速度。

基於目前的市場現狀,由中科院院士、華東師範大學計算機與軟體學院院長、上海控安戰略專家委員會主任何積豐帶領團隊研發出的國內首款單元測試用例智慧型設計工具,可代替人力工作,查詢出**是否存在漏洞等安全隱患。這款軟體針對c語言編寫的系統**,利用軟體**分析中的動態符號執行技術,把程式變數抽象為符號變數,再結合約束求解技術,能自動生成高覆蓋度的測試用例,從而實現智慧型化的單元測試。上海控安技術總監劉虹博士表示:「一名工控系統**測試人員一天通常能測試5-8個函式,如果一套工控系統**包含800個函式,完成測試至少需要3個月時間。而我們這款工具僅需2小時就能測試完畢,並且確保90%以上覆蓋率。」

說起此工具的用途,還要追溯到2023年。當時,我國探月工程團隊正在為2023年「嫦娥三期」探測器軟著陸月球做準備,但是系統**測試任務時間緊迫,人工檢測似乎很難趕上進度。作為我國第乙個在月球軟著陸的無人登月探測器,「嫦娥三期」對功能安全與資訊保安的要求極高,因此系統的**檢測不能出絲毫紕漏。如何既快又好地完成這項任務?何積豐院士團隊與楊孟飛院士團隊溝通後,開發出了第一代單元測試工具。結果,此智慧型工具不負眾望,出色地完成了輔助測試任務,為「嫦娥登月」作出了貢獻。

在經歷多次提公升和改進後,此智慧型測試工具的適用範圍越來越大。例如,它已應用於國內軌道交通列車的執行控制系統,進行軌交訊號**輔助測試。劉虹博士表示,軌道交通面臨的場景十分複雜,無論是地鐵啟動、剎車還是岔口與訊號燈的互動,都對其工控系統的功能安全有著極高的要求,因此對系統可靠性的要求也很高。可喜的是,上海科研團隊的多年成果應用於軌道交通後,表現十分出色。

C C 單元測試工具

做好單元測試,推薦學習國產的單元測試工具單元測試工具visual unit2.2。部分功能 自動生成測試 視覺化編輯測試用例,人工只需建立容易想到的測試用例 自動統計語句 條件 分支 路徑覆蓋 顯示引數 成員變數 返回值等輸入輸出資料 顯示每個用例所執行的 自動畫出邏輯結構圖 顯示邏輯結構圖中任一語...

Junit單元測試工具

1.1作用 junit單元單元測試測試,主要用於對程式進行專業化測試package a junit import org.junit.assert import org.junit.test public class test junit 使用junit專業的判定結果的方法 assert類,斷言類 ...

單元測試工具 winAMS

摘要 論述軟體測試工具winams caseplayer2在嵌入軟體單元測試中的應用。介紹了軟體測試工具的功能 插裝原理 測試環境搭建 覆蓋率測試 測試資料取得等相關技術研究及經驗總結。覆蓋率專家winams源自日本gaio公司,gaio公司創始於1980年,公司早期開發編譯器,隨後開發了基於源 分...