skip to main content
article

A practical guide to SQL white-box testing

Published:01 April 2006Publication History
Skip Abstract Section

Abstract

SQL is a ubiquitous language used in a wide range of applications for accessing the data stored in relational databases. However, the usual software testing techniques are not designed to address some important features of SQL. We present a set of practical guidelines for designing white-box tests cases that reasonably exercise the way in which an SQL query processes the stored data. These guidelines are illustrated using an example.

References

  1. S. Brass, C. Goldberg, "Semantic Errors in SQL Queries: A Quite Complete List". Journal of Systems and Software, 2005, in press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. M. Y. Chan, S. C. Cheung, "Testing database applications with SQL semantics", 2nd International Symposium on Cooperative Database Systems for Advanced Applications, Springer, Singapore, 1999, pp. 363--374.Google ScholarGoogle Scholar
  3. D. Chays, Y. Deng, PG. Frankl, S. Dan, F. I. Vokolos, E. J. Weyuker, "An AGENDA for testing relational database applications", Software Testing, Verification and Reliability, Vol. 14(1), 2004, pp. 17--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Y. Deng, P. Frankl, D. Chays, "Testing Database Transactions with AGENDA". 27th International Conference on Software Engineering, ACM Press, New York, NY, USA, 2005, pp. 78--87. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. N. Juristo, A. M. Moreno, S. Vegas, "Reviewing 25 Years of Testing Technique Experiments". Empirical Software Engineering, Vol. 9(1), 2004, pp. 7--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. G. M. Kapfhammer, M. L. Soffa, "A family of test adequacy criteria for database-driven applications". 9th European software engineering conference and the 11th ACM SIGSOFT international symposium on Foundations of software engineering, ACM Press, New York, NY, USA, 2003, pp. 98--107. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. H. Lu, H. C. Chan, K. K. Wei, "A Survey on Usage of SQL", SIGMOD Record, Vol. 22(4), 1993, pp. 60--65. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. T. J. Ostrand, M. J. Balcer, "The category-partition method for specifying and generating functional tests". Communications of the ACM, Vol. 31(6), 1988, pp. 676--686. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. M. J. Suárez-Cabal, J. Tuya, "Using an SQL Coverage Measurement for Testing Database Applications", ACM SIGSOFT Symposium on the Foundations of Software Engineering, ACM Press, NY, USA, 2004, pp. 253--262. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. D. Willmor, S. M. Embury, "Exploring test adequacy for database systems", Proceedings of the 3rd UK Software Testing Research workshop, 2005, pp. 123--133.Google ScholarGoogle Scholar
  11. Y. T. Yu, M. F. Lau, "A comparison of MC/DC, MUMCUT and several other coverage criteria for logical decisions". Journal of Systems and Software, 2005, in press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. J. Zhang, C. Xu, S. C. Cheung, "Automatic generation of database instances for white-box testing", 25th Annual International Computer Software and Applications Conference, IEEE Computer Society Press, Los Alamitos, CA, 2001, pp. 161--165. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A practical guide to SQL white-box testing

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader
          About Cookies On This Site

          We use cookies to ensure that we give you the best experience on our website.

          Learn more

          Got it!