parasoft Jtest 使用教程:生成并執行仙人掌測試
Jtest能夠對服務器端的JavaEE代碼(EJBs,Servlets,Struts,Action classes,Spring classes,taglibs,和servlet filters)自動生成仙人掌測試,然后在應用程序容器執行這些測試去模擬這些代碼的實際的運行時環境。在開發的工程中,這些測試能夠在開發者的桌面的當地應用服務器執行。這就允許較早的,在開發階段就把問題暴露出來。否則到了QA階段,部署,或者生產階段,修復這些bug會更加困難和耗時。在開發的生命周期的后期,這些測試又可以運行在應用服務器去驗證在配置和生產環境中代碼行為正確性。
目的和準備
自動生成服務器端的測試然后再JavaEE容器中模擬真實的執行環境。需要首先創建一個JTest JPetStore項目。
步驟
Struts 類
對Struts class產生和執行仙人掌測試:
- 在Package Explorer選擇JPetStore>src>com.ibatis.struts>BeanAction.java.
- 單擊Test Using下拉菜單,然后選擇Test Using>Built-in>Unit Testing>Generate and Run In-container.
- 在Server Selection dialog中選擇JPetStore Tomcat5.5 Server然后單擊ok.
生成和執行完成以后,統計報告會報告5個測試用例生成,100%的覆蓋率達到。注意到生成的測試類,BeanActionTest.java(在JPetStore.ctest項目里),擴展servletunit.struts.CactusStrutsTestCase.擴展這個類允許Jtest使用一個容器內置的方式去運行Servlet容器,然后測試這些Action對象的執行就像他們真的是通過Struts Action Servlet一樣。
Non-Java EE類
Jtest能夠生成和執行容器內的測試對任何類——甚至是和容器沒有任何交互的。
為Non-Java EE生成和執行仙人掌測試:
- 在Package Explorer選擇JPetStore>src>com.ibatis.jpetstore.service>OrderService.java.
- 單擊Test Using下拉菜單,然后選擇Test Using>Built-in>Unit Testing>Generate and Run In-container.
- 在Server Selection dialog中選擇JPetStore Tomcat5.5 Server然后單擊ok.
生成和執行完成以后,統計報告會報告5個測試用例生成,57%的覆蓋率達到。注意到生成的測試類,OrderServiceTest.java(在JPetStore.ctest項目里),擴展org.apache.cactus.ServletTestCase.擴展這個類允許Jtest使用一個容器內置的方式去運行Servlet容器。
Spring類
為Spring類生成和執行仙人掌測試:
- 完全刪除JPetStore項目和JPetStore.ctest項目.
- 重新建立一個JPetStore項目,不過選擇Spring而不是Struts.
- 在Package Explorer選擇JPetStore>src>org.springframework.samples.jpetstore.web.spring>ViewProductController.java.
- 單擊Test Using下拉菜單,然后選擇Test Using>Built-in>Unit Testing>Generate and Run In-container.
- 在Server Selection dialog中選擇JPetStore Tomcat5.5 Server然后單擊ok.
注意到這些生成的測試類,ViewProductControllerTest.java(在JPetStore.ctest項目中),擴展Cactus框架類ServletTestCase.在編輯器中打開類然后檢查創建的方法.注意到:某些對方法handleRequest的測試方法通過暴露異常給HttpServletRequest傳空值和HttpServletRequest。某些測試用例實際創建了一個配備了HttpServletRequestAdapter類的HttpServletRequest.對于這些測試用例,Jtest創建了返回的ModelandView對象的斷言。
在某些用例中,Jtest使用了插樁雖然測試用例是運行在容器中的。這允許他獲得一個高的覆蓋率通過返回一些會覆蓋所以code的值。當然,不用插樁直接在容器中運行也是可行的。你可以通過在Test Configuration中設置取消創建插樁。
以上就是本次教程的內容了,你也可以申請jtest試用>>,親自動手試試哦。
查看更多parasoft測試產品
獲取更多活動信息