Abstract
Two popular specification-based test case generation methods are the choice relation framework and the classification-tree methodology. Both of them come with associated tools and have been used in different applications with success. Since both methods are based on the idea of partition testing, they are similar in many aspects. Because of their similarities, software testers often find it difficult to decide which method to be used in a given testing scenario. This paper aims to provide a solution by first contrasting the strengths and weaknesses of both methods, followed by suggesting practical selection guidelines to cater for different testing scenarios.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Amla, N., Ammann, P.E.: Using Z Specifications in Category Partition Testing. In: Systems Integrity, Software Safety, and Process Security: Building the Right System Right: Proceedings of the 7th Annual IEEE Conference on Computer Assurance (COMPASS 1992), pp. 3–10. IEEE Computer Society, Los Alamitos (1992)
Briand, L.C., Labiche, Y., Bawar, Z., Spido, N.T.: Using Machine Learning to Refine Category-Partition Test Specifications and Test Suites. Information and Software Technology 51(11), 1551–1564 (2009)
Chan, E.Y.K., Chan, W.K., Poon, P.-L., Yu, Y.T.: An Empirical Evaluation of Several Test-a-Few Strategies for Testing Particular Conditions. Software: Practice and Experience (2011), doi:10.1002/spe.1098
Chen, T.Y., Poon, P.-L., Tang, S.-F., Tse, T.H.: On the Identification of Categories and Choices for Specification-Based Test Case Generation. Information and Software Technology 46(13), 887–898 (2004)
Chen, T.Y., Poon, P.-L., Tang, S.-F., Tse, T.H.: DESSERT: a DividE-and-conquer methodology for identifying categorieS, choiceS, and choicE Relations for Test case generation. IEEE Transactions on Software Engineering (2011), doi:10.1109/TSE.2011.69
Chen, T.Y., Poon, P.-L., Tse, T.H.: An Integrated Classification-Tree Methodology for Test Case Generation. International Journal of Software Engineering and Knowledge Engineering 10(6), 647–679 (2000)
Chen, T.Y., Poon, P.-L., Tse, T.H.: A Choice Relation Framework for Supporting Category-Partition Test Case Generation. IEEE Transactions on Software Engineering 29(7), 577–593 (2003)
Chusho, T.: Test Data Selection and Quality Estimation Based on the Concept of Essential Branches for Path Testing. IEEE Transactions on Software Engineering 13(5), 509–517 (1987)
Foreman, L.M., Zweben, S.H.: A Study of the Effectiveness of Control and Data Flow Testing Strategies. Journal of Systems and Software 21(3), 215–228 (1993)
Grochtmann, M., Grimm, K.: Classification Trees for Partition Testing. Software Testing, Verification and Reliability 3(2), 63–82 (1993)
Hierons, R.M., Harman, M., Fox, C., Ouarbya, L., Daoudi, M.: Conditioned Slicing Supports Partition Testing. Software Testing, Verification and Reliability 12(1), 23–28 (2002)
Hierons, R.M., Harman, M., Singh, H.: Automatically Generating Information from a Z Specification to Support the Classification Tree Method. In: Bert, D., Bowen, J.P., King, S., Waldén, M. (eds.) ZB 2003. LNCS, vol. 2651, pp. 388–407. Springer, Heidelberg (2003)
Jiang, B., Tse, T.H., Grieskamp, W., Kicillof, N., Cao, Y., Li, X., Chan, W.K.: Assuring the Model Evolution of Protocol Software Specifications by Regression Testing Process Improvement. Software: Practice and Experience 41(10), 1073–1103 (2011)
Kansomkeat, S., Thiket, P., Offutt, J.: Generating Test Cases from UML Activity Diagrams Using the Condition-Classification Tree Method. In: Proceedings of the 2nd International Conference on Software Technology and Engineering (ICSTE 2010), pp. V1-62–V1-66. IEEE Computer Society, Los Alamitos (2010)
Lemos, O.A.L., Vincenzi, A.M.R., Maldonado, J.C., Masiero, P.C.: Control and Data Flow Structural Testing Criteria for Aspect-Oriented Programs. Journal of Systems and Software 80(6), 862–882 (2007)
Myers, G.J.: The Art of Software Testing. Wiley, Hoboken (2004)
Ostrand, T.J., Balcer, M.J.: The Category-Partition Method for Specifying and Generating Functional Tests. Communications of the ACM 31(6), 676–686 (1988)
Poon, P.-L., Tang, S.-F., Tse, T.H., Chen, T.Y.: CHOC’LATE: a Framework for Specification-Based Testing. Communications of the ACM 53(4), 113–118 (2010)
Poon, P.-L., Tse, T.H., Tang, S.-F., Kuo, F.-C.: Contributions of Tester Experience and a Checklist Guideline to the Identification of Categories and Choices for Software Testing. Software Quality Journal 19(1), 141–163 (2011)
Richardson, D.J., O’Malley, O., Tittle, C.: Approaches to Specification-Based Testing. In: Proceedings of the ACM SIGSOFT 3rd Symposium on Software Testing, Analysis, and Verification (TAV 3), pp. 86–96. ACM, New York (1989)
Shepard, T., Lamb, M., Kelly, D.: More Testing should be Taught. Communications of the ACM 44(6), 103–108 (2001)
Singh, H., Conrad, M., Sadeghipour, S.: Test Case Design Based on Z and the Classification-Tree Method. In: Proceedings of the 1st IEEE International Conference on Formal Engineering Methods (ICFEM 1997), pp. 81–90. IEEE Computer Society, Los Alamitos (1997)
Subramanian, G.H., Nosek, J., Raghunathan, S.P., Kanitkar, S.S.: A Comparison of the Decision Table and Tree. Communications of the ACM 35(1), 89–94 (1992)
Yu, Y.T., Ng, S.P., Chan, E.Y.K.: Generating, Selecting and Prioritizing Test Cases from Specifications with Tool Support. In: Proceedings of the 3rd International Conference on Quality Software (QSIC 2003), pp. 83–90. IEEE Computer Society, Los Alamitos (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Poon, PL., Chen, T.Y., Tse, T.H. (2012). Choices, Choices: Comparing between CHOC’LATE and the Classification-Tree Methodology. In: Brorsson, M., Pinho, L.M. (eds) Reliable Software Technologies – Ada-Europe 2012. Ada-Europe 2012. Lecture Notes in Computer Science, vol 7308. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-30598-6_12
Download citation
DOI: https://doi.org/10.1007/978-3-642-30598-6_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-30597-9
Online ISBN: 978-3-642-30598-6
eBook Packages: Computer ScienceComputer Science (R0)