A BizUnit Test Code Generation for Framework-based Web Application

프레임워크기반 웹 어플리케이션을 위한 BizUnit 테스트 코드 생성

  • 이은영 (이화여자대학교 컴퓨터공학) ;
  • 최병주 (이화여자대학교 컴퓨터정보통신공학과) ;
  • 송화정 (이화여자대학교 컴퓨터정보통신공학과) ;
  • 황상철 (삼성 SDS SW Eng 팀)
  • Published : 2009.12.15

Abstract

With greater utilization of web application and growth of its market, the function of such application is being expanded With today's increasing demand for high quality software, we see a sharp rise in the interest for web application test. The current trend is that web applications are being developed based on a framework of developmental environment. Hence, as the scope of that framework expands, each module of the entire web application is being configured by the combination of heterogeneous files. The distinctive characteristics of a web application are based on the fact that the framework that is provided in partially completed form controls the structure of all objects of development. The present study defines the web business logic as a minimal unit which has meaning as a unit of application for the web application. In this paper, we define web business logic as a least meaningful execution unit of web applications, propose how to generate automatically the BizUnit test code for it, and analyze the effectiveness of testing of the web application via the BizUnit test codes.

웹 어플리케이션의 활용과 그 시장이 압도적으로 성장하면서 그 기능이 확대 심화되고 있다. 오늘날 나날이 높아지는 소프트웨어의 고품질 요구와 맞물려 웹 어플리케이션의 테스트에 대한 관심도 급증하고 있다. 웹 어플리케이션은 개발환경적인 면에서 프레임워크 기반으로 개발되고 있는 추세로 그 프레임워크의 영역이 확장될수록 전체 웹 어플리케이션의 각 모듈은 이질적인 파일들의 조합으로 구성되고 있다. 반제품의 형태로 제공되는 프레임워크가 전체 개발 대상의 구조를 제어한다는 점에서 웹 어플리케이션만의 특성을 갖게 된다. 본 논문에서는 웹 어플리케이션의 실행 단위로써 의미를 가지는 최소 단위로 웹비즈니스 로직을 정의하고, 이에 대한 BizUnit 테스트 코드를 자동생성하는 방안을 제안하며, BizUnit을 통해 효과적으로 웹 어플리케이션을 테스트하는 것을 분석한다.

Keywords

References

  1. Douglas C. Schmidt, Michael Stal, Hans Rohnert, and Frank Buschmann, "Pattern Oriented Soft-ware Architecture: Patterns for Concurrent and Networked Objects," Volume 2,” Wiley & Sons, New York, 2000
  2. John Arthur, Shiva Azadegan, “Spring Framework for Rapid Open Source J2EE Web Application Development: A Case Study,” pp. 90-95, 2005 https://doi.org/10.1109/SNPD-SAWN.2005.74
  3. Gerard Meszaros, “xUnit Test Patterns,” Addison-Wesley, Upper Saddle NJ, 2007
  4. JUnit, http://www.junit.org
  5. P. Godefroid, N. Klarlund, and K. Sen. “DART: Directed automated random testing,” In Proc. of the ACM SIGPLAN 2005 Conference on Program-ming Language Design and Implementation (PLDI), 2005 https://doi.org/10.1145/1064978.1065036
  6. Samsung SDS, "AnyFrame," http://www.anyframe-java.org/
  7. StrutsTestCase, http://strutstestcase.sourceforge.net/
  8. Java Source Reflection, http://ws.apache.org/jaxme/js/jparser.html
  9. W3C Document Object Model, http://www.w3.org/DOM
  10. Apache Velocity, http://velocity.apache.org/
  11. CodePro, http://download.instanttiations.com/CodeProDoc/continuous/latest/docs/doc/features/junit/test_case_generation.html
  12. AgitarOne, http://www.agitar.com/solutions/products/agitarone.html
  13. JTest, http://www.parasoft.com/jsp/products/home.jsp?product=Jtest
  14. Filippo Ricca, Paolo Tonella, "Analysis and Tes-ting of Web Applications," Proceedings of the $23^{rd}$ IEEE International Conference on Software Engi-neering, IEEE Computer Society, pp.25-34, 2001, Toronto, Ontario https://doi.org/10.1109/ICSE.2001.919078
  15. A. Marchetto, F. Ricca, P. Tonella, "Empirical Validation of a Web Fault Taxonomy and its usage for Fault Seeding," In the IEEE Int. Symp-sium on Web Site Evolution, 2007 https://doi.org/10.1109/WSE.2007.4380241
  16. HittpUnit test, http://httpunit.sourceforge.net/
  17. DBUnit test, http://dbunit.org/