版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、使用LDRA Testbed對代碼進行單元測試單元測試的主要操作:被測對象選擇編譯器的確認與切換單元測試模塊Tbrun的打開測試序列(Sequence)的創(chuàng)建測試用例的創(chuàng)建測試用例的IO值設定測試用例中樁的設定測試用例的執(zhí)行測試結果的查看測試用例的保存測試用例中增加用戶全局變量測試用例創(chuàng)建向導中對全局數組和指針的處理詳細操作如下:一、 測試對象的選擇在Testbed中C碼中的“單元”就是一個函數,每次對一個函數的代碼進行測試,測試時每次打開一個源文件。打開程序LDRA Testbed,點擊Testbed的菜單Fileselect file 通過文件瀏覽窗口打開文件要分析的文件,如C:LDRA_
2、WorkareaExamplesC_testbed_examplesTestrianTestrian.c 。點擊select之后,可以在工具快捷按鈕欄的下方看見目前選擇的文件二、 編譯器的確認與切換在使用TBrun進行單元測試前需要先確認當前使用的編譯器是否是正確的,如果不是正確的編譯器可以切換為正確的編譯器,其操作如下:1. 確認編譯器是否為目標編譯器在Testbed中右上角的”O(jiān)ptions Window”中要確認”Current Compiler”和”Default Compiler”所顯示的內容,需要注意兩點,“Current” 和 “Default”是否是目標編譯器“Current”
3、 和 “Default”是否是一樣的,應該相同才可以 2. 切換編譯器如果編譯器不是用戶想要的目標編譯器需要切換,切換方法如下:點擊Testbed菜單ConfigureSwitch Compiler,在彈出窗口的編譯器列表中選擇目標編譯器,然后點擊Select按鈕即可。如果編譯器選項中的”Current Compiler”和”Default Compiler”不一致,也需要設置為一致的,設置方式為點擊Testbed菜單ConfigureSwitch Compiler,在彈出窗口中點擊Reset Current Set按鈕來設置。三、 單元測試模塊Tbrun的打開由Testbed進入Tbrun有
4、三種模式,每種模式對應不同的測試類型,三種模式分別為:“Integration Unit / Module Test”、”Isolation Unit / Module Test”和” Unit Test Only”。C代碼的單元測試使用” Unit Test Only”模式,CPP的單元測試使用另外兩種模式皆可。在Testbed菜單TBrunUnit Test Only點擊,即可進入Tbrun模塊。四、 測試序列(Sequence)的創(chuàng)建在Tbrun中是使用測試序列(sequence)來容納測試用例和測試數據的,進入Tbrun后第一步需要做的就是創(chuàng)建測試序列。建議每一個函數對應一個測試序列,
5、便于用例管理。在Tbrun的菜單Sequence-New點擊,彈出測試序列創(chuàng)建窗口,在Sequence name”下面需要用戶寫入Sequence的名字;窗體下面的選項卡設置如下,在”Code Coverage”選項卡中把選擇框 ”Code Coverage”選上,此項可自動計算覆蓋率信息,在”Test Enviroment ”選項卡中把選擇框”Create Dicitoary”、”Create User Globals”、”Create Stubs”,注意”Test build”選擇框不要選,其他保持默認設置即可;然后點擊”Continue”按鈕即可。五、 測試用例的創(chuàng)建在Tbrun窗體的右
6、上角File View窗口中,點擊文件名能夠展開顯示文件中所包含的函數,把鼠標放到某個函數名上,右鍵彈出菜單點擊”Create New Test Case”,會彈出測試用例創(chuàng)建向導窗口在此窗口中會顯示函數的基本信息,可不用關注,直接點擊按鈕”Continue”向下進行,這樣一個用例創(chuàng)建完成,可在用例管理窗口”Test Case View”中顯示已經創(chuàng)建的用例,以數字編號用例,在”Variable I/O View”窗口中會顯示此函數的輸入輸出參數。六、 測試用例的輸入輸出參數IO值設定測試用例的輸入輸出參數值的設定是測試的核心,在這一步決定了有什么樣的輸入和用例運行之后應該有什么樣的輸出(預期
7、輸出),從而實現了函數功能的驗證。對于函數的輸入輸出不只有函數的參數,還包含函數內部使用的全局變量。在”Variable I/O View”窗口中工具會顯示出函數的參數和內部使用的全局變量,并會顯示每個參數是輸入還是輸出,用戶給每個參數賦值即可,注意輸入以”I”標示的,輸出是以”O(jiān)”標示的,此處的輸出是指預期的輸出值。對于標示為”I”的變量一定要有一個確定的值,要不讓用例無法執(zhí)行。七、 測試用例中樁的設定樁-使用一個函數原型相同的空函數來代替原函數如果被測函數中調用了其他函數,則被調用函數會被打樁,如果被調用函數的返回值影響了被測函數的分支流程,或被調用函數的動作影響了被測函數的分支流程,則需
8、要對樁進行設置,一般設置樁的返回值即可滿足。在Tbrun的”Variable I/O View”中,雙擊”M Double-click to access”圖標即可打開樁的屬性設置其返回值等在樁函數右鍵,彈出菜單,選擇”Set Return Value On Exit”,彈出返回值設定窗口在途中的”Value”設定返回值,點擊”O(jiān)K”。八、 測試用例的執(zhí)行測試用例的IO設置和樁的設定之后,此用例就算構造完成了,接下來要做的就是執(zhí)行用例,有兩種運行方式,操作方法如下:a. 一鍵式運行用例;在測試用例管理窗口中的空白處右鍵可彈出菜單,點擊”Run Test Case Driver”即可運行用例。b
9、. 分步式執(zhí)行用例;在測試用例管理窗口中的空白處右鍵可彈出菜單,按順序點擊“Generate Driver”、”Build Driver”、”Execute Driver”、(“Split Regression Driver Output”)、”Process Regression Driver Output”,每執(zhí)行一步如果執(zhí)行成功則會在旁邊以“”提示,如果不成功則沒有“”,請排查原因。九、 測試結果的查看單元測試其測試結果由兩部分構成:函數功能驗證和函數覆蓋率信息;函數功能的驗證是通過用例的執(zhí)行之后的用例確認對話框中的Pass/Fail結果反映的。函數的覆蓋率信息可通過動態(tài)覆蓋率分析報告來
10、查看,在Tbrun的菜單ResultDynamic Coverage Analysis Report點擊即可,此報告中包含整個文件中所有函數的語句、分支MC/DC覆蓋率信息。還有一種圖形化的方式顯示函數的覆蓋率信息,在Tbrun的用例管理窗口,選中用例然后右鍵在彈出的菜單中選擇”View Flowgraph”即可打開覆蓋率圖形化顯示窗體,圖中綠色的代表已經覆蓋了的,紅色的代碼未覆蓋的在彈出窗體中可通過菜單選擇為圖形添加分支跳轉條件注釋十、 測試用例的保存通過設計多個測試用例執(zhí)行,函數的功能全部驗證通過,并且覆蓋率的值也達到了測試規(guī)范中的要求的值,此函數的測試就可以結束了,以便于以后對此函數進行
11、回歸測試,需要用戶把用例保存起來,保存的操作如下:在Tbrun的菜單SequenseExprot Test Case(TCF)點擊,通過文件瀏覽窗體選擇一個目錄來保存對應的TCF文件。至此單元測試的主要操作流程結束,下面介紹在測試用例創(chuàng)建過程中會常用到的幾個重要的操作處理。十一、 測試用例中增加用戶全局變量單元測試每次通過Testbed來選擇一個文件,而我們每個用例是針對一個函數的,所以在編譯的時候只編譯用戶代碼中的一個函數,如果此函數中使用了全局變量,且恰好此變量是用”extern”聲明的,即全局變量身體的聲明(定義)不在此文件內部,就需要用戶自己在Tbrun中添加此全局變量的聲明(定義)。
12、操作如下:在Tbrun的菜單Global VariablesCreate User Global點擊即可彈出用戶全局變量定義窗口,在窗口中添入”Name”和”Declaration Type”點擊finish即可。十二、 測試用例創(chuàng)建向導中對全局數組和指針的處理1. 全局數組的處理如果被測函數內使用的全局數據,在創(chuàng)建用例的時候用例創(chuàng)建向導會提示遇到全局數組,讓用例來選擇處理方式,一共有三種方式“Add all elements to the test case” 把數組的所有元素都添加到用例的IO窗口中“Add multiple elements to the test case” 把數組的部
13、分元素添加到用例的IO窗口中“Remove all elements from the test case” 把數組的所有元素從用例的IO窗口中刪除用戶根據自己代碼中對全局數組的訪問情況自主選擇相應的處理方式。2. 指針的處理a. 輸入指針的處理如果被測函數的參數中包含輸入指針(此指針的所指向內容未被改變),在創(chuàng)建用例時用例向導會提示用戶發(fā)現輸入指針,讓用戶選擇處理方式,一般選擇第二種”Set input pointer to the address of entity”在下面的空白處填入要指向的實體,也可以通過”Find”按鈕選擇已有的用戶全局變量,或者”New”新建一個用戶全局變量來指向。b. 輸出指針的處理如果
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畹町燒烤活動方案策劃(3篇)
- 打井建房施工方案(3篇)
- 大堂換燈施工方案(3篇)
- 天津專業(yè)活動策劃方案(3篇)
- 社團冬至活動策劃方案(3篇)
- 物流行業(yè)運輸與配送規(guī)范
- 2025年老齡服務行業(yè)護理操作規(guī)范
- 醫(yī)院開業(yè)廣告投放方案
- 給排水技術培訓
- 2025年大學大二(管理學)專業(yè)核心能力測試題及解析
- 急性酒精中毒急救護理2026
- 2021-2022學年天津市濱海新區(qū)九年級上學期物理期末試題及答案
- 江蘇省蘇州市、南京市九校2025-2026學年高三上學期一輪復習學情聯合調研數學試題(解析版)
- 2026年中國醫(yī)學科學院醫(yī)學實驗動物研究所第三批公開招聘工作人員備考題庫及答案詳解一套
- 2025年幼兒園教師業(yè)務考試試題及答案
- 國家開放大學《Python語言基礎》形考任務4答案
- (自2026年1月1日起施行)《增值稅法實施條例》重點解讀
- 2026春小學科學教科版(2024)三年級下冊《4.幼蠶在生長》教學設計
- 管道安裝協議2025年
- 2025寧夏賀蘭工業(yè)園區(qū)管委會招聘40人筆試參考題庫及答案解析
- 2026河南省氣象部門招聘應屆高校畢業(yè)生14人(第2號)參考題庫附答案
評論
0/150
提交評論