LOGISCOPE 是一組嵌入式軟件測試工具集。它貫穿于軟件開發、代碼評審、單元/集成測試、系統測試、以及軟件維護階段。它面向源代碼進行工作。LOGISCOPE 針對編碼、測試和維護。因此,LOGISCOPE 的重點是幫助代碼評審(Review )和動態覆蓋測試(Testing )。
LOGISCOPE對軟件的分析,采用基于國際間使用的度量方法(Halstead、McCabe等)的質量模型,以及從多家公司收集的編程規則集,可以從軟件的編程規則,靜態特征和動態測試覆蓋等多個方面,量化地定義質量模型,并檢查、評估軟件質量。
LOGISCOPE 在開發階段,查找可尋找潛在的錯誤。
在代碼評審階段,LOGISCOPE 定位那些具有80%錯誤的程序模塊。
通過對未被測試代碼的定位,LOGISCOPE 幫助找到隱藏在未測試代碼中的缺陷。
項目領導和質量工程師用LOGISCOPE 定期地檢查整個軟件的質量。
在各個階段用LOGISCOPE ,改進軟件工程的實踐,訓練程序員的編寫良好的代碼和測試活動,確保系統易于維護,減少風險。
在有合同關系時,合同方可以用LOGISCOPE 明確定義驗收時質量等級和執行測試。承制方可以LOGISCOPE 演示其軟件的質量。
LOGISCOPE 獲取ISO/IEC9126 定義的"Quality Characteristics ";
LOGISCOPE 為ISO-9001提供需求(test acceptance criteria and qulity records );
LOGISCOPE 為開發者提供SEI/CMM在第2 級(Repeatable )所要求的軟件質量跟蹤等關鍵實踐的要求,推進開發組織盡快達到SEI/SMM 的3 級。
1)LOGISCOPE 用于開發階段
定義質量模型
RuleChecker 預定義了50 個的編程規則:名稱約定(如:局部變量用小寫等);表示約定(如:每行一條指令); 限制(如:不能用GOTO 語句,不能修改循環體中的計數器等)。用戶可以從這些規則中選擇,也可以用Tcl 、腳本和編程語言定義新的規則。此外,還提供50 個面向安全-關鍵系統的編程規則。
Audit 以ISO9126 模型作為質量評價模型的基礎。質量評價模型描述了從Halstend 、McCabe 的度量方法學和VERILOG 引入的質量方法學中的質量因素(可維護性、可重用性、等)和質量準則(可測試性、可讀性、等)。
工程項目領導或質量管理人員可以根據準則、應用軟件的生存周期、合同需求等,挑選并采納適用于項目需求的質量模型。
驗證、評審和改進代碼
RuleChecker 用所選的規則對源代碼進行驗證。指出所有不符合編程規則的代碼,并提出改進源代碼的解釋和建議。RulrChecker 通過文本編輯器直接訪問源代碼并指出需要糾正的位置。
Audit 將被評價的軟件與規定的質量模型進行比較,用圖形形式顯示軟件質量的級別,因此,質量人員可以把精力集中到需要修改的代碼部分。對度量元素和質量模型不一致的地方作出解釋并提出糾正的方法。
2)LOGISCOPE 用于測試階段
定義測試準則
LOGISCOPE 推薦對指令(IB)、邏輯路徑(DDP)和調用路徑(PPP)的覆蓋測試。此外對安全-關鍵軟件還提供了MC/DC 的覆蓋測試。
測試的有效性
TestChecker 產生每個測試的測試覆蓋信息和累計信息。用直方圖顯示覆蓋比率,并根據測試運行情況實時在線更改。隨時顯示新的測試所反映的測試覆蓋情況。
TestChecker 允許所有的測試運行依據其有效性進行管理。用戶可以減少那些用于非回歸測試的測試。
測試的優化
在測試階段的步,執行的測試是功能性(黑箱)測試。其目的是檢查所期望的功能是否已實現。在測試初期,覆蓋率會迅速增加。象樣的測試工作一般能達到70%的覆蓋率。但是,要提高此比率是十分困難的。主要是由于測試用例覆蓋了相同的測試路徑。這時,需要對測試策略做一些改變。執行結構化(白箱)測試,即,要檢測沒有執行過的邏輯路徑,定義新的測試用例覆蓋這些路徑。
在執行測試期間,當測試策略改變時,綜合的運用TestChecker 檢測關鍵因素以提高效率。將TestChecker與Audit 配合使用能夠幫助用戶分析未測試的代碼。
用戶可以顯示所關心的代碼,并通過對執行未覆蓋的路徑的觀察得到有關的信息。信息以圖形(控制流圖)和文本(偽代碼和源文件)的形式提交,并在其間建立導航關聯。
TestChecker 管理系統聲明新的測試、生成有關文檔、定義啟動命令、以及自動執行的方法。
3)LOGISCOPE 用于維護階段
人們廣泛的認識到應用系統的維護費用與開發費用基本相等。經驗表明50%的軟件維護時間化在對結構、邏輯和運行的理解上。LOGISCOPE 可以大大的減少對未知系統的理解所需的時間。
Audit 將應用系統的框架以文件形式(部件文件間的關系)和調用圖的形式(函數和過程間的關系)可視化。函數的邏輯結構以控制流圖的形式顯示。在控制流圖上選定一個節點,即可得到相對應的代碼。可以在不同的抽象層上對應用系統進行分析,不同層次間的導航,促進對整體的理解。
4)對嵌入式領域的支持
LOGISCOPE 支持多種測試方式。特別是對嵌入式領域軟件的支持。
眾所周知,嵌入式系統軟件的測試是為困難的。因為,它的開發是用交叉編譯方式進行的。在目標機(Target)上,不可能有多余的空間記錄測試的信息。必須實時地將測試信息通過網線/串口傳到宿主機(Host)上,并實時在線地顯示。因此,對源代碼的插裝和目標機上的信息收集與回傳成為問題的關鍵。
LOGISCOPE 很好地解決了這些技術,成為嵌入式領域測試工具的佼佼者。它支持各種實時操作系統(RTOS)上的應用程序的測試,也支持邏輯系統的測試。Logiscope 提供VxWorks 、pSOS 、VRTX 實時操作系統的測試庫。
5)對航空/航天/國防/核電站領域的支持
在航空/航天領域,安全是關鍵的問題。因此,歐美的航空/航天制造廠商和使用單位聯合制定了RTCA/DO-178B。LOGISCOPE 通過對"Reviews and Analysis of the Source Code " 和"Structural Coverage Analysis "能夠使開發的軟件達到RTCA/DO-178B 標準的A 、B 、C 三個系統級。
LOGISCOPE 是個提供MC/DC(Modified Condition/Decision Coverage)測試的工具。
6)軟件文檔和測試文檔的自動生成
Logiscope 提供了文檔自動生成工具。使用者可以將代碼評審的結果和動態測試情況實時生成所要求的文檔,這些文檔忠實地記錄代碼的情況和動態測試的結果。文檔的格式可以根據用戶的需要定制,如,GJB-438A。
支持的主機平臺:
UNIX:Sun OS/Solaris, HP 700 HP-UX, RS6000 AIX, Power PC, DEC UNIX;
IBM Mainframe MVS環境; PC Windows/NT。
支持的語言:C, C++, Ada, Java
目標機環境:支持嵌入式實時操作系統VxWorks,PSOS,VRTX
嵌入式軟件測試工具--LOGISCOPE
更新時間: 2005-08-26 00:00:00來源: 粵嵌教育瀏覽量:4072