[發明專利]一種星載軟件測試自動執行方法有效
| 申請號: | 201310108439.1 | 申請日: | 2013-03-29 |
| 公開(公告)號: | CN103218289A | 公開(公告)日: | 2013-07-24 |
| 發明(設計)人: | 王振華;張國峰;蔡雨辰;陳朝暉;楊孟飛;董曉剛;黨紀紅;索旭華;張維瑾;牛和明 | 申請(專利權)人: | 北京控制工程研究所 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 中國航天科技專利中心 11009 | 代理人: | 褚鵬蛟 |
| 地址: | 100080 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 軟件 測試 自動 執行 方法 | ||
技術領域
本發明涉及一種星載軟件測試自動執行方法。
背景技術
為提高星載軟件測試的執行效率和質量、降低重復性的測試勞動,引入自動測試執行勢在必行。自動化測試系統主要解決具有重復性測試特點的測試項目的自動化執行問題,利用信息技術通過計算機替代人執行的重復性的手工操作。
自動測試執行作為自動測試系統中最核心的組成部分之一,其對測試執行的處理處理能力直接決定了該自動測試系統的能力。現有常規的航天自動測試執行方式往往僅僅能夠基于時間序列順序執行測試操作,而無法由測試操作中由于參數變化或者其它事件觸發而引發的測試序列執行操作,該方法存在局限性,無法覆蓋測試執行中需要基于測試過程中產生的條件進行判斷觸發的測試執行。
為了能夠更加全面和更加完善地對星載軟件進行測試,需要開發一種既基于測試序列又能同時兼顧由測試事件而觸發的測試執行操作的自動測試執行方法。從而達到既降低了測試人員手工處理的隨意性和難以重復的弊端,又能彌補現有星載軟件自動測試執行對復雜處理條件判定和執行能力的不足,提高測試自動執行的覆蓋率。
發明內容
本發明所要解決的技術問題是:針對現有技術的不足,提供了一種星載軟件測試自動執行方法;不但可以基于測試事件的時間先后順序,還可以通過比對變量的變化來觸發測試事件的執行,提高了自動測試序列執行的靈活性和對各種狀態更改的測試覆蓋率。
本發明包括如下技術方案:
一種星載軟件測試自動執行方法,根據可執行測試腳本序列動態創建順序執行線程和實時監控線程,將可執行測試腳本序列導入到順序執行線程,將可執行測試腳本序列中的實時監控任務導入到實時監控線程中形成實時比對序列;所述可執行測試腳本序列包括多個腳本序列塊,每個腳本序列塊包括多個操作塊;
順序執行線程的步驟如下:
(1)將腳本等待計數變量清零,將阻塞等待標志復位,將腳本序列塊及操作塊的提取指針指向可執行測試腳本序列開始處;
(2)判斷所述可執行測試腳本序列是否為空,
如果腳本序列為空,則將線程執行標志設置為無效,結束順序執行線程;
如果腳步序列非空,則取出腳步序列中的第一個腳本序列塊,轉步驟(3);
(3)判斷當前腳本序列塊中是否有未處理的操作塊,若有則取出第一個操作塊,并轉入步驟(4),若無則判斷腳本等待計數變量是否為0,若為0,則返回步驟(2),否則轉步驟(7);
(4)判斷當前操作塊的執行條件類別,
若執行條件類別為瞬時判斷條件,則比較瞬時判斷條件變量的當前值與期望值,若一致則轉步驟(5),否則轉步驟(6);
若執行條件類別為持續性判斷條件,則將該持續性判定條件注入至實時監控線程的比對任務序列,同時將腳本等待計數變量加1,然后判斷當前操作塊是否需要以阻塞方式等待監控線程的返回結果,若需要則置位阻塞等待標志,轉步驟(7),若不需要則直接轉步驟(7);
若執行條件類別為當前操作塊沒有執行條件,則轉步驟(5);
(5)讀取當前操作塊中指令的目的地址,然后裝訂指令參數,執行當前操作塊;
(6)判斷當前操作塊中是否有瞬時的預期結果比對操作,若有則輸出瞬時比對結果,然后轉步驟(7),否則直接轉步驟(7);
(7)判斷注入操作塊序列是否為空,若非空則取出第一個注入操作塊,讀取當前注入操作塊中指令的目的地址,裝訂指令參數,然后執行當前操作塊,并將腳本等待計數變量減1,然后轉步驟(8);若“操作塊注入序列”為空,則轉步驟(9);
(8)判斷阻塞等待標志是否被置位,
若阻塞等待標志已被置位,則判斷當前的注入操作塊是否為步驟(4)中持續性判定條件所對應的操作塊,若是則復位阻塞等待標志,若不是則轉步驟(7);
若阻塞等待標志為無效,則轉步驟(7);
(9)判斷順序執行線程與實時監控線程的接口緩沖區是否有實時監控線程注入的操作塊,若有,則將實時監控線程注入的操作塊加入至注入操作塊序列末尾,并轉步驟(10),若沒有,則直接轉步驟(10);
(10)判斷阻塞等待標志是否置位,若置位則轉步驟(7),否則轉步驟(3)。實時監控線程的步驟如下:
(1)置位線程執行標志,將實時比對序列的提取指針指向實時比對序列開始位置;
(2)判斷線程執行標志是否置位,若置位,則轉步驟(3),若未置位,則結束線程;
(3)判斷實時比對序列是否為空,若非空,則轉步驟(4),若為空,則轉步驟(5);
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京控制工程研究所,未經北京控制工程研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310108439.1/2.html,轉載請聲明來源鉆瓜專利網。





