jtest5.0使用手冊
第一章
簡(jiǎn)介:
jtest是parasoft公司推出的一款針對java語(yǔ)言的自動(dòng)化白盒測試工具,它通過(guò)自動(dòng)實(shí)現java的單元測試和代碼標準校驗,來(lái)提高代碼的可靠性。Jtest先分析每個(gè)java類(lèi),然后自動(dòng)生成junit測試用例并執行用例,從而實(shí)現代碼的最大覆蓋,并將代碼運行時(shí)未處理的異常暴露出來(lái);另外,它還可以檢查以DbC(Design by Contract)規范開(kāi)發(fā)的代碼的正確性。用戶(hù)還可以通過(guò)擴展測試用例的自動(dòng)生成器來(lái)添加更多的junit用例。Jtest還能按照現有的超過(guò)350個(gè)編碼標準來(lái)檢查并自動(dòng)糾正大多數常見(jiàn)的編碼規則上的偏差,用戶(hù)可自定義這些標準,通過(guò)簡(jiǎn)單的幾個(gè)點(diǎn)擊,就能預防類(lèi)似于未處理異常、函數錯誤、內存泄漏、性能問(wèn)題、安全隱患這樣的代碼問(wèn)題。
另外,jtest 采用parasoft公司的AEP方法論來(lái)實(shí)現團隊開(kāi)發(fā)中對代碼錯誤標準化管理,這個(gè)方法論,也是parasoft提出的基于團隊開(kāi)發(fā)模式下提高軟件質(zhì)量和可靠性的一套解決方案,目前還處在探索階段,詳情可參閱 http://www.parasoft.com/jsp/aep/aep.jsp 。
優(yōu)勢:
1)使預防代碼錯誤成為可能,從而大大節約成本,提高軟件質(zhì)量和開(kāi)發(fā)效率
2)使單元測試??包括白盒、黑盒以及回歸測試成為可能
3)使代碼規范檢查和自動(dòng)糾正成為可能
4)鼓勵開(kāi)發(fā)團隊橫向協(xié)作來(lái)預防代碼錯誤
特征:
1)通過(guò)簡(jiǎn)單的點(diǎn)擊,自動(dòng)實(shí)現代碼基本錯誤的預防,這包括單元測試和代碼規范的檢查
2)生成并執行junit單元測試用例,對代碼進(jìn)行即時(shí)檢查
3)提供了進(jìn)行黑盒測試、模型測試和系統測試的快速途徑
4)確認并阻止代碼中不可捕獲的異常、函數錯誤、內存泄漏、性能問(wèn)題、安全弱點(diǎn)的問(wèn)題
5)監視測試的覆蓋范圍
6)自動(dòng)執行回歸測試
7)支持DbC編碼規范
8)檢驗超過(guò)350個(gè)來(lái)自java專(zhuān)家的開(kāi)發(fā)規范
9)自動(dòng)糾正違反超過(guò)160個(gè)編碼規范的錯誤
10)允許用戶(hù)通過(guò)圖形方式或自動(dòng)創(chuàng )建方式來(lái)自定義編碼規范
11)支持大型團隊開(kāi)發(fā)中測試設置和測試文件的共享
12)實(shí)現和IBM Websphere Studio /Eclipse IDE 的安全集成
第二章
本章說(shuō)明了如何安裝jtest full版本,full版本包括jtest和eclipse,jtest被集成在eclipse框架內部。
1.在windows安裝步驟:
1)雙擊jtest自解壓文件jtest5_win32.exe
2)按提示步驟進(jìn)行,選擇【complete jtest installation】,一直到結束安裝
2.在unix安裝步驟:
1)將安裝文件jtest.linux.tar.gz或gzip ?dc jtest.solaris.tar.gz 拷貝到即將安裝jtest的目錄
2)解壓檔案文件:
linux:gzip ?dc jtest.linux.tar.gz | tar xvf ?
solaris: gzip ?dc jtest.solaris.tar.gz | tar xvf ?
解壓后,出現一個(gè)叫做jtest的目錄,包含了jtest安裝后的全部文件。
運行jtest時(shí),執行 ./jtest 命令即可。
注冊:獲得正版jtest安裝程序后,只有正確注冊才可以使用,方法也很簡(jiǎn)單,這里不詳述。
jtest5.0使用手冊(二)
發(fā)表人:sincky | 發(fā)表時(shí)間: 2004年八月19日, 13:12
第三章
本章是jtest的快速指南部分,讀者可迅速掌握jtest的基本功能及使用方法;包含的主題如下:
1)第一課:創(chuàng )建一個(gè)實(shí)例項目
2)第二課:檢查代碼規范
3)第三課:自動(dòng)修復代碼規范錯誤
4)第四課:訪(fǎng)問(wèn)代碼規范的描述信息
5)第五課:忽略/取消忽略報告的錯誤
6)第六課:運行jtest builtin 配置
7)第七課:以fly方式檢查特定的編碼標準或一組標準
8)第八課:清除錯誤信息
9)第九課:創(chuàng )建、執行、擴展junit測試用例
10)第十課:通過(guò)實(shí)例配置來(lái)修改代碼的檢查規范
11)第十一課:創(chuàng )建并運行一個(gè)簡(jiǎn)單的用戶(hù)自定義jtest配置
12)第十二課:執行回歸測試
13)第十三課:檢測內存泄漏
一、 創(chuàng )建一個(gè)實(shí)例項目
jtest 默認情況下,可以創(chuàng )建一個(gè)java實(shí)例項目,本章里,我們也利用該項目演示。用戶(hù)在使用自己的代碼時(shí),就不必創(chuàng )建這樣的項目來(lái)使用jtest,直接利用在eclipse里創(chuàng )建的java項目即可。
目的:
演示如何創(chuàng )建jtest實(shí)例項目
步驟:
1)選擇 file>new>jtest example project
2)默認項目名稱(chēng)是jtest example ,點(diǎn)擊finish即可
項目創(chuàng )建完成,并顯示在jtest 視窗里。Package explore顯示在工作臺左側,此時(shí)只列出一個(gè)jtest example項目。如何在java視窗里查看項目呢?
1) 點(diǎn)擊工作臺左上方快捷條里的java perspective 按鈕;如果java perspective 按鈕不在,點(diǎn)擊快捷條里的open perspective按鈕,選擇other,然后選擇java,打開(kāi)即可。
2) 或者在快捷條里點(diǎn)擊java perspective 按鈕進(jìn)入jtest視窗,如下:
??>jtest 視窗
??>java視窗
??>open 視窗
二、檢查代碼規范
通過(guò)檢查代碼規范,用戶(hù)可以避免一些將來(lái)可能導致軟件功能、性能或安全方面的問(wèn)題。
目的:
演示如何檢查代碼規范,并瀏覽報告的代碼規范錯誤。
步驟:
這里我們檢查simple這個(gè)類(lèi)(在jtest example項目里的example.eval包里)是否符合默認的java編碼規范。
1)選擇simple.java源文件
2)在工具欄里點(diǎn)擊play按鈕,即
默認情況下,點(diǎn)擊這個(gè)按鈕,jtest會(huì )將檢查代碼規范和單元測試一并執行;后續課程里,我們會(huì )說(shuō)明如何執行特定的測試,這里我們集中講述代碼規范分析和分析結果。
3)測試運行結束后,在jtest運行面板里選擇standards標簽,這里包括如下關(guān)于編碼規范的內容:
? 代碼規范檢查耗費的時(shí)間
? 被檢查的文件個(gè)數
? 運行失敗的次數
? 發(fā)現的錯誤個(gè)數
? 忽略掉的錯誤個(gè)數
? 違反編碼的規范個(gè)數
4)關(guān)閉運行窗口。
5)在jtest工作臺右下方,檢查errors found視窗。如果該視窗不在,選擇window>show view>other,選擇jtest>errors found,即可。
6)在errors found視窗,打開(kāi)example.java分支,前六個(gè)報告的錯誤是代碼規范錯誤,每個(gè)代碼規范錯誤都包含在引起錯誤的代碼行數和簡(jiǎn)單的錯誤描述信息。
7) 雙擊[Line: 54] Text label ’case10’ may be typo for ’case 10’節點(diǎn),simple.java這個(gè)文件的編輯器自動(dòng)打開(kāi),并且違反代碼規范的那一行會(huì )高亮顯示,鼠標也自動(dòng)定位在錯誤附近。
三、自動(dòng)修復代碼規范錯誤
jtest 能自動(dòng)修復大多數它捕獲的代碼規范錯誤,它利用集成的eclipse quick fix 特性來(lái)實(shí)現此功能�?梢宰詣�(dòng)修復的代碼規范錯誤,在jtest configurations面板的standards標簽里,都被標記成黃色球形圖標。
目的:
演示如何利用jtest quick fix 特性來(lái)自動(dòng)修復編碼規范錯誤。
步驟:
1)在errors found 視窗里,擴展simple.java節點(diǎn),雙擊[Line: 54] Text label ’case10’ may be typo for ’case 10’這個(gè)錯誤,編輯器自動(dòng)打開(kāi),錯誤行高亮顯示,并且編輯器的左側有個(gè)黃色球形圖標標記這個(gè)錯誤,這個(gè)圖標的出現表示能夠利用quick fix 選項來(lái)自動(dòng)糾正代碼規范錯誤。
2)在這個(gè)黃色球形圖標上點(diǎn)擊一下,彈出兩個(gè)選項窗口,一個(gè)是針對這個(gè)編碼錯誤的quick fix,另一個(gè)提供了被違反的編碼規范的描述信息。
3)雙擊fix選項,就會(huì )自動(dòng)糾正編碼規范錯誤,jtest也會(huì )重新定位編輯器里的代碼。針對這個(gè)例子,case10會(huì )替換case 10,以后再測試的話(huà),就不會(huì )再報錯了;而且,jtest也自動(dòng)刪除了在errors found視窗里關(guān)于這個(gè)錯誤的信息。
4)保存代碼。
四、訪(fǎng)問(wèn)代碼規范的描述信息
jtest 能自動(dòng)檢查超過(guò)350個(gè)編碼規范和任何數量的用戶(hù)自定義規范。每條規范都有一個(gè)對應的描述信息,用來(lái)幫助用戶(hù)理解自己的代碼為何偏離了正確的規范。
目的:
演示如何深入了解報告的編碼規范錯誤信息
步驟:
1) 在errors found視窗,擴展simple.java 分支
2) 右鍵單擊[Line: 53] case 0 is missing either "break", "return", or /*falls through */這個(gè)錯誤,選擇view rule description,jtest就會(huì )顯示在builtin help窗口里顯示關(guān)于這個(gè)規范的描述信息
3)瀏覽之后,點(diǎn)擊back按鈕即可
所有的編碼規范的描述信息都可以在jtest的幫助里獲得。
五、忽略/取消忽略報告的錯誤
用戶(hù)在編碼時(shí),有些違反編碼規范的錯誤可以忽略不計,那么可以通過(guò)此功能來(lái)實(shí)現,以后再測試時(shí),不會(huì )再提示錯誤信息。如果想針對一些特定編碼規范全部忽略,我們推薦最好修改jtest configurations,以便jtest測試時(shí)不對其檢查。
目的:
演示如何忽略/取消忽略報告的錯誤。
步驟:
針對simple.java類(lèi),想要忽略Utility class does not have a "private" default constructor: ’Simple’ 這個(gè)錯誤:
1)在errors found視窗里,擴展simple.java分支
2)右鍵點(diǎn)擊Utility class does not have a "private" default constructor: ’Simple’ 這個(gè)錯誤,選擇suppress error選項
3) 在彈出對話(huà)框里輸入個(gè)短語(yǔ)或句子表示為何要忽略這個(gè)錯誤。針對此例,輸入exploring suppressions;關(guān)閉對話(huà)框,相應的編碼規范錯誤從errors found里清除。將來(lái)再測試時(shí),該錯誤信息會(huì )報告在suppressed messages視窗里。
Suppressed messages如果不在,也可通過(guò)相同的方法從jtest>show view>suppressed messages打開(kāi),這個(gè)視窗有如下信息:
? message:忽略掉的 jtest 錯誤
? reason:錯誤被忽略掉的原因
? resource:忽略錯誤的源文件
? user:執行忽略錯誤的操作者
? date:執行忽略錯誤的日期
如果想取消忽略這個(gè)錯誤:
在suppressed messages視窗里,右鍵點(diǎn)擊CODSTA.UCDC: Utility class does not have a "private" default constructor: ’Simple’ 這個(gè)錯誤,選擇remove suppression即可。
jtest5.0使用手冊(三)
發(fā)表人:sincky | 發(fā)表時(shí)間: 2004年八月19日, 19:33
六、運行jtest builtin 配置
jtest configuration是一個(gè)定義了用戶(hù)想要測試的內容設置的集合。每次jtest運行測試,都會(huì )用指定的jtest configuration(如果沒(méi)有選擇特定的jtest configuration,會(huì )執行默認的jtest configuration);一般jtest configuration會(huì )確定以下一些設置參數:
執行的測試類(lèi)型(編碼規范檢查、測試用例生成、測試用例執行等)
需要檢查的編碼的規范
自動(dòng)生成測試用例時(shí)需要的參數
每個(gè)測試執行的范圍(覆蓋多少行等)
jtest包含一系列由jtest開(kāi)發(fā)者預定義的builtin配置,其中有一個(gè)java coding conventions(java編碼風(fēng)格)是基于sun公司的java編碼風(fēng)格,以此來(lái)檢查指定的編碼規范,詳情參閱http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html。
目的:
演示如何運行jtest里特定的jtest configurations。
步驟:
這里我們檢查simple.java類(lèi)是否符合sun公司的java編碼風(fēng)格
1) 選擇simple.java源文件
2) 打開(kāi)play下拉菜單,選擇jtest using>builtin>coding standards>code conventions for the java programming language by sun,運行完成后,打開(kāi)一個(gè)對話(huà)框
3) 關(guān)閉對話(huà)框
4) 在errors found視窗里查看該文件違反sun編碼風(fēng)格的地方
七、以fly方式檢查特定的編碼標準或一組標準
如果用戶(hù)想快速檢查代碼是否符合單一代碼規范,或一組規范,可以采用fly方式來(lái)檢查代碼,而不必采用jtest builtin configuration或創(chuàng )建自定義的jtest配置。
目的:
演示如何執行fly方式下的編碼規范檢查。
步驟:
1)選擇simple.java源文件
2)打開(kāi)play下拉菜單,選擇jtest using>builtin>coding standards rules>formatting>check all rules in this category(也可選擇其他的選項)
3)查看errors found視窗里是否出現錯誤信息
八、清除錯誤信息
如果用戶(hù)想要清除掉tasks視窗或errors found視窗里的錯誤信息,需要學(xué)習本課程。這些清除掉的信息只是臨時(shí)刪除,下次運行出錯,依然會(huì )顯示出來(lái)。
目的:
演示如何清除掉tasks視窗或errors found視窗里的錯誤信息。
步驟:
利用shift或ctrl鍵選擇錯誤信息,右鍵點(diǎn)擊錯誤信息,可選擇delete error或delete all/clear all。
九、創(chuàng )建、執行、擴展junit測試用例
jtest 能自動(dòng)生成并執行junit測試用例,來(lái)發(fā)現代碼運行的未處理異常,用戶(hù)也可以擴展這些用例來(lái)增強測試覆蓋范圍,檢查代碼單元級功能、子模塊、模塊以及系統級功能。
目的:
演示如何自動(dòng)生成并運行junit測試用例,如何查看和驗證測試結果,以及如何修復發(fā)現的錯誤。
步驟:
1)選擇simple.java源文件
2)點(diǎn)擊play按鈕
3)查看運行后的對話(huà)框(這里run標簽表示運行了13個(gè)用例,error標簽發(fā)現了一個(gè)錯誤,failures標簽里沒(méi)有運行失敗的用例)
4)關(guān)閉該運行窗口
5)注意這里jtest把生成的junit測試用例文件simpletest.java加到了一個(gè)新項目jtest example.jtest的examples.eval包里
6) 在error found視窗里,右鍵點(diǎn)擊[Line: 107] java .lang. NullPointer Exception這個(gè)錯誤,選擇quick fix選項
7)按用戶(hù)意愿自動(dòng)修復后,保存代碼
8) 可通過(guò)選擇play下拉菜單的Jtest Using> Builtin> Generate and Run Unit Tests,重新運行測試
9) 通過(guò)打開(kāi)simple.java文件,可以在編輯器里修改測試代碼,以增強測試;輔助test class outline視窗,可更好的查看測試代碼的結果。如果test class outline視窗不在,可通過(guò)Jtest Perspective>Jtest> Show View> Test Class Outline打開(kāi)
10)擴展test class outline分支,能看到每個(gè)用例的輸入inputs和結果outcomes,如果知道了每個(gè)方法的正確結果,那么可以:
? 對每個(gè)正確的結果outcome,可右鍵點(diǎn)擊outcome節點(diǎn),選擇verify,jtest會(huì )將//unverified注釋從這個(gè)用例文件里除掉,在以后測試里,jtest就會(huì )檢查取該值的輸出結果,如果出錯則報告錯誤。
? 對于不正確的outcome,點(diǎn)擊outcome節點(diǎn),會(huì )在編輯器里修正,jtest在以后測試里同樣檢查正確的值,如果出錯則報錯。
? 對于用戶(hù)不想讓jtest在以后的測試里檢查的outcome,可右鍵點(diǎn)擊outcome節點(diǎn),選擇ignore,則將其注釋掉,以后測試里將其忽略.
jtest5.0使用手冊(四)
發(fā)表人:sincky | 發(fā)表時(shí)間: 2004年八月24日, 09:11
十、通過(guò)實(shí)例配置來(lái)修改代碼的檢查規范
前述的實(shí)例配置默認是全局配置,即點(diǎn)擊play時(shí)jtest執行的測試;用戶(hù)可以修改該配置。
目的:
演示如何自定義jtest實(shí)例配置增強測試規則
步驟:
1)從菜單中選擇jtest-jtest configuration或點(diǎn)擊play下拉菜單選擇該項,所有可以配置項顯示在左側面板,user defined分支可以修改,builtin項可以查看和拷貝,但不能修改。
2)選擇example configuration項,注意此項有個(gè)紅色G的標志,表示該項被設置成全局配置。
3)打開(kāi)standards標簽,這里是用戶(hù)可以激活和關(guān)閉的代碼標準規范
4)點(diǎn)擊internationalization復選框,將會(huì )提示jtest配置檢查并阻止國際化錯誤
以后jtest執行測試時(shí),就會(huì )檢查國際性錯誤;如果想取消該檢查標準,按照同樣的步驟取消復選框即可。
十一、創(chuàng )建并運行一個(gè)簡(jiǎn)單的用戶(hù)自定義jtest配置
jtest預設置的jtest configurations是基于開(kāi)發(fā)者使用的最普遍的測試場(chǎng)景,如果想自定義測試,可以修改builtin配置或者創(chuàng )建用戶(hù)定義的jtest配置,我們推薦每次執行不同的測試項目時(shí)都設置不同的測試場(chǎng)景。
目的:
演示如何創(chuàng )建一個(gè)簡(jiǎn)單的jtest對類(lèi)編碼的檢查規范
步驟:
1)打開(kāi)jtest-jtest configuration面板
2)選擇user defined項
3)點(diǎn)擊new,表示要創(chuàng )建一個(gè)新的jtest測試場(chǎng)景,jtest添加一個(gè)新目錄叫做example configuration(1)
4)輸入該場(chǎng)景的名字,例如輸入metrics,這里我們讓jtest只檢查類(lèi)規范
5)打開(kāi)standards標簽
6)點(diǎn)擊disable all visible rules按鈕,先關(guān)閉所有標準;如果看不到這個(gè)按鈕,擴大整個(gè)面板就可以看到了。
7)點(diǎn)擊class metrics復選框激活全部的類(lèi)編碼標準;擴展class metrics節點(diǎn)可查看具體規范
8)打開(kāi)generation標簽,清除enable unit test generation復選框;這是為了讓這個(gè)自定義的測試場(chǎng)景只集中在代碼規范上,如果要生成測試用例,運行已經(jīng)存在的jtest配置即可。
9)打開(kāi)execution標簽清除enable unit test execution復選框,目的和上一個(gè)相同
10) 點(diǎn)擊close,提示是否保存時(shí),選擇yes
11) 運行該測試場(chǎng)景時(shí),點(diǎn)擊要測試的項目,從play下拉菜單里選擇user defined-metrics即可
十二、執行回歸測試
當jtest第一次運行一個(gè)單元測試時(shí),它會(huì )創(chuàng )建一個(gè)關(guān)于當前測試類(lèi)的功能快照,并以junit格式的測試用例記錄了類(lèi)的行為。實(shí)質(zhì)上,它自動(dòng)創(chuàng )建了一個(gè)回歸測試,當一個(gè)測試類(lèi)修改了,可以重新運行測試用例來(lái)檢查是否出現錯誤。
目的:
演示jtest如何執行回歸測試
步驟:
1)打開(kāi)simple.java源文件的編輯器
2)將add()方法里的“+”改成“-”,下一行應該變成return 11-12
3)保存源文件
4)選擇simple.java源文件
點(diǎn)擊play按鈕運行回歸測試;jtest將報告錯誤junit.framework.AssertionFailedError: expected:<14> but was:<0>。這個(gè)錯誤提示我們add()方法的功能自從上次測試后改變了;如果該錯誤不是故意的,例如排版會(huì )敲錯,我們將要糾正該錯誤恢復到從前的正確情況;如果是故意這樣修改,那就要糾正期望的outcome。
十三、檢測內存泄漏
jtest能夠在執行單元測試時(shí)檢測內存泄漏。如果測試結束,內存仍然在使用中,jtest將會(huì )報告內存泄漏。
目的:
演示jtest如何在測試執行中檢測內存泄漏
步驟:
1)打開(kāi)example configuration
2)打開(kāi)execution標簽
3)打開(kāi)options子標簽
4)激活detect memory leaks選項
5)apply并close
6)選擇library.java源文件:打開(kāi)jtest example項目-example.leaks-library.java
7) 從play下拉菜單里選擇Jtest Using> User-Defined> Example Configuration
8) 測試結束,報告內存泄漏錯誤細節
9) 雙擊[Line 37] Memory Leak: 3.8 megabytes per call,在源文件里打開(kāi)代碼,找到引起內存泄漏的代碼行??每次addbook()方法被同樣的參數調用,第37行代碼分配的內存沒(méi)有被釋放
10) 取消文件末尾的hashcode()和equals()方法的注釋?zhuān)源藖?lái)消除內存泄漏錯誤即可。
第四章
本章是一些概念,英文書(shū)中列舉的一些重要概念在前面都有所介紹,另外一些對實(shí)際jtest用戶(hù)用處不大,以后我會(huì )寫(xiě)一個(gè)如何學(xué)習jtest的文檔,在那里再仔細闡述。這里有一個(gè)概念,前面沒(méi)有提到,這里簡(jiǎn)單說(shuō)一下。
Rulewizard:是用戶(hù)自定義jtest代碼檢查標準的模型,和jtest4.5或早期版本的功能、使用都相同。(關(guān)于Jtest4.5版本的使用介紹,本人也有個(gè)文檔)Jtest能利用Rulewizard自動(dòng)增加任何有效的代碼檢查標準,以此,項目團隊檢查特殊項目的代碼需求。
使用Rulewizard,代碼規范能通過(guò)圖形方式(類(lèi)似流程圖)或自動(dòng)方式(提供代碼實(shí)例來(lái)演示實(shí)際的代碼規范偏差)來(lái)創(chuàng )建。
Rulewizard在jtest architect edition(架構版本)才可以用。這句話(huà)是原文說(shuō)的,但在我們安裝的full版里也可以打開(kāi),也許是full版里也包括Rulewizard了吧。其界面如下:
如何打開(kāi)Rulewizard呢?
1)打開(kāi)Jtest> Jtest Configurations
2)打開(kāi)任何jtest configuration的standards標簽
3)右鍵點(diǎn)擊rules樹(shù)的區域,選擇add user-defined rule;Rulewizard界面就打開(kāi)了,關(guān)于它的詳細使用(修改、創(chuàng )建。激活等)參考幫助里的view in the Rulewizard UI。不過(guò)本人覺(jué)得沒(méi)什么必要,人家parasoft提供的都夠多、夠全了,我們何必再加這些規范呢?除非真的有特殊需要吧;相反,等你用jtest,就會(huì )發(fā)現我們開(kāi)發(fā)的代碼很多地方都會(huì )被jtest認為有錯,到時(shí)候你可別煩啊,^-^!
第五章
本章介紹jtest一些任務(wù),主要功能任務(wù)都已經(jīng)在第三章闡述過(guò)了;這里只說(shuō)明一些其他輔助任務(wù)。
一、定時(shí)執行測試任務(wù):
jtest允許定時(shí)執行測試,和其他的自動(dòng)化工具一樣,可以安排夜晚執行測試,第二天來(lái)查看測試結果。另外,jtest還可以按照計劃時(shí)間來(lái)創(chuàng )建大批量的測試用例,以不影響白日的工作。
如何定時(shí)測試呢?
1) 選擇jtest-preferences
2) 選擇jtest-scheduled testing
3) 激活enable scheduled testing選項
4) 在 execution time里輸入希望的開(kāi)始時(shí)間:第一個(gè)文本框輸入小時(shí)(0到23),第二個(gè)文本框輸入分鐘(0到59),例如希望在pm 10:30開(kāi)始,那么就在第一個(gè)框里輸入22,在第二個(gè)里輸入30即可
5) 點(diǎn)擊configuration to run的edit按鈕,選擇要執行的jtest configuration
6) 下一個(gè)edit是選擇此執行要覆蓋的測試集,即某項目或部分項目文件
7) 點(diǎn)擊apply
注意:如果jtest主程序沒(méi)有打開(kāi),到了定時(shí)時(shí)間,測試不會(huì )自動(dòng)運行
二、評估發(fā)現的錯誤:
和第三章介紹的error found一樣,這里添加一個(gè)參考圖示,供讀者進(jìn)一步了解:
三、查看測試覆蓋信息:
jtest能報告所有junit測試用例的覆蓋率,因此用戶(hù)可以評估當前代碼被測試的范圍,并決定是否需要增加額外的測試用例。一般來(lái)說(shuō),jtest能自動(dòng)創(chuàng )建覆蓋了被測試代碼75%的測試用例,有時(shí)覆蓋率也會(huì )達到100%,有時(shí)也會(huì )低于 75%。
測試覆蓋率的跟蹤一般被默認為是激活的。如果想要手工激活:
1)打開(kāi)Jtest> Jtest Configurations
2)選擇想要修改的測試配置,打開(kāi)execution標簽,再選擇option子標簽,保證report code coverage選項是激活的
測試執行后,想要查看覆蓋率信息,有以下兩個(gè)個(gè)方法:
1)打開(kāi)一個(gè)測試文件的編輯器,在編輯區域左側的一個(gè)蘭色/綠色條表示測試覆蓋的行,紫色條表示沒(méi)有覆蓋到的行,沒(méi)有顏色的行表示不可執行的部分
2)打開(kāi)coverage view面板,顯示了每個(gè)類(lèi)和每個(gè)方法的覆蓋率統計圖(覆蓋百分比、全部可執行的行、覆蓋的行),如圖:
總結:關(guān)于jtest的基本使用,我想上述的內容就夠了。白盒測試工具不像winrunner、robot等黑盒工具有那么多的預設置或腳本代碼編寫(xiě)工作,它的設置簡(jiǎn)單明了;包括有一些我沒(méi)有介紹的設置,例如修改測試范圍scope、連接teamserver等(本人覺(jué)得這些內容也不重要,對使用jtest精髓毫無(wú)價(jià)值),讀者只要裝了jtest,按照我介紹的主要功能描述,點(diǎn)擊幾次自然就融會(huì )貫通了。
為了推動(dòng)我國測試行業(yè)的發(fā)展,增強測試從業(yè)者的職業(yè)技能,作為一名普通的測試工程師,我想我們都有責任將自己的經(jīng)驗共享出來(lái),共同交流進(jìn)步!同時(shí)歡迎任何業(yè)界朋友對我的作品批評指正,也歡迎更多的人使用本工具(就算學(xué)習一下也好),并就任何實(shí)際問(wèn)題開(kāi)展討論�!�2004-08-20 北京』
延伸閱讀
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/