DOI QR코드

DOI QR Code

Automated Test Data Generation for Testing Programs with Flag Variables Based on SAT

SAT를 기반으로 하는 플래그 변수가 있는 프로그램 테스팅을 위한 테스트 데이터 자동 생성

  • Published : 2009.06.30

Abstract

Recently, lots of research on automated test data generation has been actively done. However, techniques for automated test data generation presented so far have been proved ineffective for programs with flag variables. It can present problems when considering embedded systems such as engine controllers that make extensive use of flag variables to record state information concerning devices. This paper introduces a technique for generating test data effectively for programs with flag variables. The presented technique transforms the test data generation problem into a SAT(SATisfiability) problem and makes advantage of SAT solvers for automated test data generation(ATDG). For the ends, we transform a program under test into Alloy which is the first-order relational logic and then produce test data via Alloy analyzer.

최근에 테스트 데이터를 자동으로 생성하는 방법에 관한 연구가 활발하게 진행되고 있다. 그러나 이러한 방법들은 플래그 변수가 프로그램에 존재하는 경우에는 효과적이지 못함이 밝혀졌다. 이는 엔진 제어기와 같은 내장형 시스템들이 전형적으로 디바이스 관련 상태 정보를 기록하기 위해 플래그 변수를 많이 이용한다는 점을 고려할 때 문제가 된다. 이 논문에서는 플래그 변수가 있는 프로그램에 대하여 효과적으로 테스트 데이터를 생성할 수 있는 방법을 소개한다. 이 방법은 테스트 데이터 생성 문제를 SAT(SATisfiability) 문제로 변환하고 SAT 해결도구를 이용하여 자동으로 테스트 데이터를 생성한다. 이를 위해 프로그램을 1차 관계 논리 언어인 Alloy로 변환하고 Alloy 분석기를 통하여 테스트 데이터를 생성한다.

Keywords

References

  1. J. Clarke, J. Dolado, M. Harman, R. Hierons, B. Jones, M. Lumkin, B. Mitchell, S. Mancoridis, K. Rees, M. Roper, and M. Shepperd, 'Reformulating Software Engineering as a Search Problem', IEE Proceedings-Software, Vol.5, No.1, pp.161-175, 2003 https://doi.org/10.1049/ip-sen:20030559
  2. J. Wegener, A. Baresel, and H. Sthamer, 'Evolutionary Test Environment for Automatic Structural Testing', Information and Software Test Technology, Vol.43, No.14, pp.841-854, 2001 https://doi.org/10.1016/S0950-5849(01)00190-2
  3. L. Bottaci, 'Instrumenting Programs with Flag Variables for Test Data Search by Genetic Algorithm', In Proc. of the Genetic and Evolutionary Computation Conf.(GECCO'02), pp.1337-1342, NY, USA, July, 2002
  4. M. Harman, R. Hu, R. Hierons, A. Baresel, and M. Sthamer, 'Improving Evolutionary Testing by Flag Removal', Information and Software Test Technology, Vol.43, No.14, pp.841-854, 2001 https://doi.org/10.1016/S0950-5849(01)00190-2
  5. J. Edvardsson, 'A Survey on Automatic Test Data Generation', In Proc. the Second Conf. on Computer Science and Engineering, pp.21-28, 1999
  6. M. W. Moskewicz, Y. Zhao, L. Zhang, and Malik, 'Chaff: Engineering an Efficient SAT solver', In Proc. 38th Design Automation Conference(DAC), pp.530-535, 2001
  7. E. Goldgerg, and Y. Nivikov, 'BerkMin: A Fast and Robust SAT solver', In DATE, pp.142-149, 2002 https://doi.org/10.1109/DATE.2002.998262
  8. 정인상, 'SAT에 기반한 포인터가 있는 프로그램을 위한 목적지향 테스트 데이터 생성', 인터넷정보학회논문지, 제9권 2호, pp.89-105, 2008
  9. D. Jackson, 'Alloy: A light weight object modeling notation', Technical Report 797, MIT Lab for Computer Science, Feb., 2000 https://doi.org/10.1145/505145.505149
  10. D. Jackson, Alloy 3.0 Reference Manual, http://alloy.mit.edu, 2004
  11. D. Jackson., Alloy 4.0 Quickstart guide, http://alloy.mit.edu, 2007
  12. A. Baresel, and H. Sthamer, 'Evolutionary Testing of Flag Conditions', In Proc. of the Genetic and Evolutionary Computation Conf.(GECCO'03), pp.2442-2454, Chicago, USA, July, 2003 https://doi.org/10.1007/3-540-45110-2_148
  13. A. Baresel, D. Binkley, M. Harman. and B. Korel, 'Evolutionary Testing in the Presence of Loop Assigned Flags: A Testability TRansformation Approach', In Proc. of the ACM SIGSOFT International Symp. on Software Testing and Analysis (ISSTA'04), pp. 108-118, Boston, USA, July, 2004 https://doi.org/10.1145/1013886.1007527
  14. A. Andoni, D. Daniliuc, S. Khurshid, and D. Marinov, 'Evaluating the Small Scope Hypoththesis', Technical Report 921, MIT Lab for Computer Science, Feb., 2003

Cited by

  1. Automated Black-Box Test Case Generation for MC/DC with SAT vol.16D, pp.6, 2009, https://doi.org/10.3745/KIPSTD.2009.16D.6.911