Jtest知識問答_第1頁
Jtest知識問答_第2頁
Jtest知識問答_第3頁
Jtest知識問答_第4頁
Jtest知識問答_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 jtest 常見問題問答如何配置jtest才能提高覆蓋率? 一方面您可以通過改變工具的測試配置來讓工具增加生成的測試用例,從而提高覆蓋率。操作如下: 選中菜單欄的jtesttest configurations,在打開的test configruations對話框的左邊選中builtinunit testinggenerate unit tests,點擊鼠標右鍵選duplicate,將這條規(guī)則復制到userdefined中然后選中generate unit tests,點右邊面板中的generationfilter。在這個里邊就是一些對生成測試用例的過濾條件,您可以在里邊做一些設置。比如取消

2、only generate test cases which will increase branch coverage 前面的復選框。這是就會讓工具產生更多的測試用例。達到提高測試覆蓋率的目的。 另一個方面,我們可以通過手動改變或增加測試用例的返回值或類型來提高測試覆蓋率。您可能也知道,如果只是光光增加測試用例是無法使我們的測試覆蓋率達到100的。這時我們可以先分析造成源代碼覆蓋率低的原因是什么,然后做相應的修改。例如,有一些if或case分支沒有被走到的原因是因為輸入參數(shù)值是固定造成的,那么我們可以查看相關的測試用例通過簡單的改變參數(shù)的值或類型來提高測試覆蓋率。 jtest是否支持命令行方

3、式?如果可以,該如何操作?jtest執(zhí)行時是可以用命令行的方式來操作的,我這里給您舉一個簡單例子: 打開命令窗口,進入到jtest的安裝目錄下,如:c:program filesparasoftjtest8.4 然后輸入 jtestcli data “c:documents and settingsharryapplication dataparasoftjtestworkspace” resource “jtest example” config user:/”example configuration” report c:reportsreport1 -data指定工程workspace的

4、路徑; -resource指定需要做測試的工程名; -config指定測試配置; -report指定輸出信息的文件路徑; 如果對這塊我的說明您不是很清楚,或是想了解更多的相關信息的話,您可以在我們的幫助文檔里得到想要的:helphelp contents然后您可以在search框中輸入command line來搜索。jtest在運行完新添加的junit測試用例后,是否會累加到覆蓋率中?首先,我們的工具做覆蓋率分析的時候是可以包含用戶自己寫的測試用例的。但就是否要做參數(shù)修改有分以下兩種情況: 如果您是在我們生成的測試用例class文件中做添加方法的動作的時候,是不需要任何參數(shù)修改就可以包含的。

5、如果您是想添加新的文件的時候,是需要做參數(shù)設置的,比如您想在jtest example.jtest-examples.eval-下再新加一個名為simpletest1.java的測試用例,操作步驟如下: 點菜單欄中的jtesttest configurations.選擇左邊bulitinrun unit tests,點擊右鍵選duplicate,將它復制到userdefined,選中它。點擊右側的execution,選中enable unit test execution這個復選框。選searchtest classes that match one of thses patterns rel

6、ative to the classes in scope:點擊new按鈕,在彈出的edit pattern for unit test classes對話框中正確輸入剛才我們新加的測試用例的路徑,比如:project name: $project_name.jtest source folder: $source_folder package name: $package_name class name: $class_nametest1 設置好后點擊ok。這時跑測試用例時我們要選jtesttest usinguser-definedrun unit tests。完成以上操作后就可以做到您想

7、要的結果了。有沒有關于jtest的詳細使用說明書?關于使用手冊,在我們工具的菜單欄的右上方helphelp contents里就是詳細的說明書,您可以按順序查看學習也可以搜速關鍵字來查閱想要的知識。或者您也可以到jtest安裝目錄下(默認:c:program filesparasoftjtest x.xmanuals)瀏覽jtest users guide (jtest8_users_guide.pdf)。什么是容器測試?我們要怎么做容器測試?首先jtest要做容器測試,必須要保證待測的工程是一個web project的工程,而且是要可以成功發(fā)布到容器中的工程。普通的java project是

8、不可以跑容器測試的。 你可以按照以下方法導入事例工作練習研究:在package explorer右擊-new-project-在jtest文件夾下選擇jpetstore example project-next-選擇framework, finish。導入后,具體操作步驟請參考help文檔中generating and executing cactus tests for in-container testing。in-container測試主要是針對容器測試的。因為在實際測試中對服務器端的java組件的測試是十分困難的,而in-container測試會自動為服務器端的java組件(ejbs,

9、 servlets, struts action classes, spring classes 等等)產生基于cactus框架的測試用例,然后會自動的在應用容器中去模擬代碼的真實運行環(huán)境去執(zhí)行生成的測試用例。這樣就可以在程序開發(fā)階段就暴露出代碼的問題。那什么是cactus呢,cactus其實是junit的一個擴展,但是它又和junit有些不同。cactus的測試分為三種不同的測試類別,jsptestcase,servlettestcase,filtertestcase,而不像junit就一種testcase,cactus的測試代碼有服務器端的和客戶端的兩個部分,它們協(xié)調工作。更多的信息你可以

10、去網上搜尋學習。test case parameterization主要功能是什么,該如何操作?通過jtest的test case parameterization可以自動產生也可以客戶自定義各種復雜的輸入值來提高測試覆蓋率。通過使用test case parameterization,我們可以很方便的控制輸入值的范圍,類型還有輸入順序,從而產生復雜的test case scenarios來保證測試覆蓋率。 具體的操作步驟你可以參照help文檔中l(wèi)esson 18: creating and using parameterized test cases。里面有非常詳細的說明。近期在試用jtes

11、t,請問jtest tracer 能否在jboss中運行;調試參數(shù)是什么?jtest的tracer是可以在jboss中運行的。 步驟: 找到啟動文件 jboss安裝目錄/bin/run.bat(windows平臺) 或者 run.sh(unix平臺) 在原始文件中修改 java_opts 參數(shù) 例如: set java_opts=%java_opts% -xms128m -xmx512m -xdebug -xrunpmt:monitor=soatest.showcase.ejb.book-store.*,file=c:tracerresult.out您只要在monitor=中加入您要監(jiān)視的包或

12、文件名。在file=中加入*.out文件的存放路徑,保存。然后啟動jboss后您就可以按正常操作網站,之后jtest就會記入下您的操作并在file指定的路徑下生成out文件。更多信息您可以在help文檔中查看“tips on configuring specific web servers for jtest tracer”??煞裢ㄟ^excel文件來準備測試數(shù)據(jù)并比較函數(shù)的測試結果?jtest是可以提供通過excel文件等其他形式來準備測試數(shù)據(jù)并比較函數(shù)的測試結果。如果您的函數(shù)的輸入和輸出都是對象或arraylist等,您可以在test case repository雙擊新建的test cas

13、e然后在上面的圖形化界面中您可以選擇memberwise這個選項。如下圖: 這時您就可以指定對象中的不同屬性,當然對象中屬性的具體值還是要像先前一樣您需要手動的寫好,這樣jtest才能自動的幫您關聯(lián)。更多信息請查看help文檔中 “using data sources in tests”在jtest 測試報告中有時會出現(xiàn)low coverage是什么意思?jtest在單元測試測試覆蓋率低于某個數(shù)值是會報“l(fā)ow coverage”,就像下面: 這說明在測試的時候覆蓋率不能滿足使用者的需求,提醒使用者注意。而這個數(shù)值客戶可用在如下面板中完成自己的客制化數(shù)值。怎樣可以提高生成的測試方法的數(shù)量嗎?

14、您可以點擊jtest工具欄中的jtesttest confirguration在buitin中選中“generate and run unit tests”點擊右鍵,點duplicate。 然后您在上面userdefined中選中“generate and run unit tests”然后選擇右邊的generation選項卡,選擇下面filter選項卡,然后去掉選中“only gneerate test cases which will increase branch coverage”的勾,保持。 在測試的時候您要選擇下拉菜單中的test usinguser-definedgenerate

15、 and run unit test. 這樣就會增加生成的測試用例說了。 當然另外一方面,生成的測試用例數(shù)和您被測方法有一定關系,如果您被測方法比較復雜,比如有多個分支,多種情況等,那相應的生成的測試用例數(shù)就多。 在生成jpetstore項目過程中,如果不指定sql sever那錯誤信息就不能存儲嗎?啟動sql server是因為jpetstore這個項目在數(shù)據(jù)庫中保存了一些寵物的信息而不是用戶理解的存儲錯誤信息的。所以要啟動jpetstore項目就要同時運行sql server。而這個sql server是在新建項目時自動加載的hsql數(shù)據(jù)庫。 啟動方法: if you have close

16、d and restarted jtest since creating the jpetstore project, start the sql server for jpetstore as follows: 1. right-click the jpetstore package explorer node, then choose run as run. 2. in the run dialog that opens, select java application start sql server. 3. click the run button 我使用 jtest 進行靜態(tài)分析的時

17、候,彈出以下窗口,請問可能是什么原因?這種錯誤信息,通常是這些java文件應該是編譯就有問題沒有通過,比如說有可能某些包沒有引入正確等等。你可以看一下這些文件是否有編譯錯誤。當項目并沒有存放在jtest workspace下時,正確的命令行操作該如何寫?重新在本地按照您的步驟在操作了一遍,運行是可以的。步驟如下: 重新新建了一個workspace,這樣可以保證空間是干凈的。 建好了以后jtest會從新啟動,然后您就可以看見干凈的jtest。然后您點擊工具欄的jtesttest configurations您就能看到一個干凈配置面板然后您選中run static analysisduplicat

18、e. 然后您可以修改名字如test。 導入項目 右鍵import項目您可以看到。我jtest的workspace在d:workspace1而項目的路徑在d盤根目錄您也可以看到d盤workspace下是沒有項目的。 命令行操作 運行成功 jtestcli.exe -data d:workspace1 -resource jtest exampleexamplesevalsimple.java -config user:/test -report c:reportsreport1 您要注意的一點,-data后面是jtest的workspase。而不是項目的地址。用jpetstore例子做容器測試時

19、,無測試用例生成,無法測試。什么原因?客戶測試環(huán)境描述: eclipse 3.4 + jtest 8.4的插件版本,windows xp sp2系統(tǒng)。 問題定位應該是您的eclipse的安裝程序中沒有包含wst這個模塊,所以造成生成的測試用例不能在容器中運行,所以還要煩請您到下面的鏈接下載wst模塊安裝到您的eclipse中再試試看。 /webtools/downloads/drops/r1.5/r-1.5.0-200606281455/如何自定義測試配置?用戶除了可以使用jtest內建的常用測試配置以外,也可以符合自己需要的測試配置。 打開菜

20、單jtest - test configurations彈出如下窗口: 選擇需要作為模板的測試配置,以靜態(tài)分析為例,請選擇“run static analysis”測試配置。點擊右鍵選擇“duplicate”復制一份,則會在用戶自定義分類“user-defined”中找到同名的測試配置,然后根據(jù)需要修改該測試配置來滿足項目的要求。 如何獲得jtest的測試報告? 在測試完成之后,可以通過測試進度面板上的report生成測試報告。 也可以在測試結果視圖中生成最近一次測試的報告。 配置測試報告的生成路徑: 默認生成的測試報告是html格式的。如下所示: 如果我在英文操作系統(tǒng)中如何才能使用日文版的j

21、test?jtest在安裝的時候自動會根據(jù)您的操作系統(tǒng)安裝相應語言的版本,如英文的操作系統(tǒng)默認的就是英文版的jtest,日文操作系統(tǒng)相應的就是日文版的jtest,如果您想在英文操作系統(tǒng)中使用日文版的jtest。操作如下: 選擇jtest圖標,右鍵屬性,在下面 c:program filesparasoftjtest8.3jtest.exe 后面加 -nl ja 變成: c:program filesparasoftjtest8.3jtest.exe -nl ja 然后重啟 tomcat中做tracer的操作步驟是什么樣的?配置tomcat服務器腳本。做tracer。 選中工程,點擊右鍵,選擇r

22、un asrun 在彈出的run面板中做如下修改。 選擇工程的服務器,選擇右邊面板的arguments,在vm arguments中的加入-xdebug -xrunpmt:monitor=org.springframework.samples.jpetstore.*,file=c:tracertracer and in-container.out。 然后apply保存。* 注意:(jdk不同版本的不同配置) 例如: -xdebug -xrunpmt:monitor=mypackage.*,file=c:monitor.out (java 5 and earlier) 變成 -agentlib:

23、pmt=monitor=mypackage.*,file=c:monitor.out (java 6) 其中參數(shù)monitor是選擇要監(jiān)控的包名,參數(shù)file是選擇*.out文件的存放路徑 * 之后在啟動服務器,打開ie瀏覽器后,jtest就會自動記錄下在頁面上的操作,并生成一個詳盡的.out文件。 然后在test configuration中duplicate一個“generate and run from monitorin”配置選項,在后邊的generation的inputs選項卡中選擇“reading from a pre-recorded file:”然后選擇之前產生的.out文件。

24、 選中要測試的工程,然后選擇test usinguser-defined下剛才保存的“generate and run from monitorin”這個測試配置。 注:另外有可能要在環(huán)境變量path中加 c:program filesparasoftjtest8.3pluginscom.parasoft.eclipse.api.win32_8.3.57jtestbin 因為做tracer的時候需要用到這個文件夾下的pmt.dll如何查看 jtest詳細版本信息?請?zhí)峁┛蛻舻膉test詳細版本信息,helpabout parasoft jtest,點擊parasoft圖標,即可查看詳細版本號,

25、如下圖: 為什么很多工程運行完后,只有行覆蓋率呢?jtest中提供兩種常用的覆蓋率信息。line coverage 和 decision coverage 如果執(zhí)行默認的run unit tests,只會生成line coverage行覆蓋率。這樣的設置可以使得單元測試的執(zhí)行速度更快。如果希望得到其他覆蓋率,請做如下設置:jtest-test configurations,彈出窗口中選擇builtin - run unit tests, 右鍵點擊該配置,選擇duplicate拷貝該配置到user-defined,如圖:選中該配置,點擊右邊execution面板,并選擇filter標簽。勾選report decision (branch) coverage 選項。,然后點擊apply - close,重新選擇該配置執(zhí)行單元測試,如圖:按照jtest tutorial的lesson 17做tracer練習時,不能正常運行錯誤如下:按下圖所示啟動tomcat。再重新操作。eclipse報告out of memory 錯誤,如何解決?有時候運行jtest的時候會產生

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論