skip to main content
research-article

Automated Test Case Generation for Programs Specified by Relational Algebra Queries

Published: 01 March 1990 Publication History

Abstract

Black-box software testing requires test cases to be generated from specifications alone. However, it is impossible to automate the process completely for arbitrary specifications. Specifications are thus restricted to being written entirely in terms of relational algebra expressions. An automated test case generation method is developed for such specifications.

References

[1]
{1} C. Vick and C. V. Ramamoorthy, Handbook of Software Engineering . New York: Van Nostrand Reinhold, 1984.
[2]
{2} G. J. Myers, The Art of Software Testing. New York: Wiley-Interscience, 1979.
[3]
{3} L. J. White, E. I. Cohen, and B. Chandrasekaran, "A domain strategy for computer program testing," Comput. Inform. Sci. Res. Center, Ohio State Univ., Columbus, Tech. Rep. OSU-CISRC-TR-78-4, 1978.
[4]
{4} L. J. White and E. I. Cohen, "A domain strategy for computer program testing," IEEE Trans. Software Testing, vol. SE-6, pp. 247-257, May 1980.
[5]
{5} E. J. Weyuker and T. J. Ostrand, "Theories of program testing and the application of revealing subdomains," IEEE Trans. Software Eng., vol. SE-6, pp. 236-246, 1980.
[6]
{6} L. A. Clarke, J. Hassell, and D. J. Richardson, "A close look at domain testing," IEEE Trans. Software Eng., vol. SE-8, no. 4, pp. 380-390, July 1982.
[7]
{7} L. A. Clarke, "A system to generate test data and symbolically execute programs," IEEE Trans. Software Eng., vol. SE-2, no. 3, pp. 215-222, Sept. 1976.
[8]
{8} L. A. Clarke and D. J. Richardson, "Validation by symbolic evaluation of symbolic execution," in Software Validation H.-L. Hausen, Ed. Amsterdam, The Netherlands: North-Holland, 1984.
[9]
{9} J. E. Hopcroft and J. D. Ullman, Introduction to Automata Theory, Languages, and Computation. Reading, MA: Addision-Wesley, 1979.
[10]
{10} J. D. Ullman, Principles of Database Systems, 2nd ed. Rockville, MD: Computer Science Press, 1982.
[11]
{11} P. M. D. Gray, "Prototyping batch data processing application in Prolog," Dept. Comput. Sci. Aberdeen Univ. Aberdeen, Scotland, 1985.
[12]
{12} E. Horowitz, A. Kemper, and B. Narasimhan, "An analysis of application generators," IEEE Software, vol. 2, no. 1, pp. 40-54, Jan. 1985.
[13]
{13} J. Martin, Fourth-Generation Languages, vol. 1. Englewood Cliffs, NJ: Prentice-Hall, 1985.
[14]
{14} R. A. Kemmerer, "Testing formal specifications to detect design errors," IEEE Trans. Software Eng., vol. SE-11, no. 1, pp. 32-43, Jan. 1985.
[15]
{15} B. Boehm, "Verifying and validating software requirements and design specifications," IEEE Software, vol. 1, no. 1, pp. 75-88, Jan. 1984.
[16]
{16} T. Anderson, Ed., Software Requirements, Specification and Testing, Proc. CSR Workshop, Univ. East Anglia, Apr. 10-12, 1984, Oxford, England: Blackwell, 1985.
[17]
{17} M. Chandraksekharan et al., "Requirements-based testing of real-time systems: Modeling for testability," Computer, vol. 18, no. 4, pp. 71-79, Apr. 1985.
[18]
{18} I. I. Hayes, "Specification directed module testing," IEEE Trans. Software Eng., vol. SE-12, no. 1, pp. 124-133, Jan. 1986.
[19]
{19} F. Bazzichi and I. Spadafora, "An automatic generator for compiler testing," IEEE Trans. Software Eng., vol. SE-8, no. 4, pp. 343-353, July 1982.
[20]
{20} S. V. Jablonski, Introduction in Discrete Mathematic. Moscow: Nauka, 1979.
[21]
{21} D. G. Luenberger, Introduction to Linear and Nonlinear Programming , 2nd ed. Reading, MA: Addison-Wesley, 1984.

Cited By

View all

Recommendations

Reviews

Jagdish C. Agrawal

The authors method for automated test case generation for programs specified by relational algebra (RA) queries is based on work in domain testing theory [1– 3]. After reviewing some background information on RA, this paper presents a method for transforming RA queries into predicates and then into systems of linear inequalities to generate test cases for RA queries based on domain testing theory. The method of test case generation has been implemented using a combination of modules coded in Prolog and Pascal. The authors cite results from experiments in which their method was applied to generate black-box databases to test each query. To test the effectiveness of the small random databases in detecting faults in the implementations of queries, the authors conducted three-part validation experiments: Mutations were introduced in the code implementing a query, Mutated code was compiled and executed with random black-box databases as inputs, and The answers were compared against the answers produced by the unmutated (correct) code. The authors summarize the results of the validation in tabular form.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Information & Contributors

Information

Published In

cover image IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering  Volume 16, Issue 3
March 1990
111 pages
ISSN:0098-5589
Issue’s Table of Contents

Publisher

IEEE Press

Publication History

Published: 01 March 1990

Author Tags

  1. arbitrary specifications
  2. automated test case generation method
  3. automatic programming
  4. black-box software testing
  5. formal specification
  6. program testing
  7. relational algebra expressions
  8. relational algebra queries
  9. relational databases.

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 15 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2017)A hierarchical combinatorial testing method for smart phone software in wearable IoT systemsComputers and Electrical Engineering10.1016/j.compeleceng.2017.06.00461:C(250-265)Online publication date: 1-Jul-2017
  • (2016)Coverage-Aware Test Database ReductionIEEE Transactions on Software Engineering10.1109/TSE.2016.251903242:10(941-959)Online publication date: 1-Oct-2016
  • (2010)QexProceedings of the 16th international conference on Logic for programming, artificial intelligence, and reasoning10.5555/1939141.1939165(425-446)Online publication date: 25-Apr-2010
  • (2010)Constraint-based test database generation for SQL queriesProceedings of the 5th Workshop on Automation of Software Test10.1145/1808266.1808276(67-74)Online publication date: 3-May-2010
  • (2009)A Software Test Cases Automated Generation Algorithm Based on Immune PrinciplesProceedings of the 6th International Conference on Autonomic and Trusted Computing10.1007/978-3-642-02704-8_6(62-74)Online publication date: 30-Jun-2009
  • (2005)Testing database transactions with AGENDAProceedings of the 27th international conference on Software engineering10.1145/1062455.1062486(78-87)Online publication date: 15-May-2005
  • (2003)On the divide-and-conquer approach towards test suite reductionInformation Sciences: an International Journal10.1016/S0020-0255(03)00060-4152:1(89-119)Online publication date: 1-Jun-2003
  • (2000)Evaluation of Regressive Methods for Automated Generation of Test TrajectoriesProceedings of the 11th International Symposium on Software Reliability Engineering10.5555/851024.856241Online publication date: 8-Oct-2000
  • (1997)Software unit test coverage and adequacyACM Computing Surveys10.1145/267580.26759029:4(366-427)Online publication date: 1-Dec-1997
  • (1993)Test case generation by means of learning techniquesProceedings of the 1st ACM SIGSOFT symposium on Foundations of software engineering10.1145/256428.167074(149-162)Online publication date: 1-Dec-1993
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media