Abstract
Combinatorial Interaction Testing (CIT) is important because it tests the interactions between the many parameters that make up the configuration space of software systems. We apply this testing paradigm to a Python-based framework for rapid development of web-based applications called Django. In particular, we automatically create a CIT model for Django website configurations and run a state-of-the-art tool for CIT test suite generation to obtain sets of test configurations. Our automatic CIT-based approach is able to efficiently detect invalid configurations.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Linux kernel feature model is available at: https://code.google.com/p/linux-variability-analysis-tools/source/browse/2.6.28.6-icse11.dimacs?repo=formulas.
- 2.
Django is available at: https://www.djangoproject.com/.
- 3.
CASA is available at: http://cse.unl.edu/~citportal/.
- 4.
This is partially due to the fact that the higher interaction strength t is required, the larger the number of test cases that need to be generated. Pairwise testing is believed to be good enough, especially since several empirical studies have shown that 6-way testing can discover all the known faults [10].
- 5.
Django tutorials are available at: https://www.djangoproject.com/.
- 6.
The smallest known test suite sizes for various CIT models are available at: http://www.public.asu.edu/~ccolbou/src/tabby/catable.html.
References
Cohen, D.M., Dalal, S.R., Fredman, M.L., Patton, G.C.: The AETG system: an approach to testing based on combinatorial design. IEEE Trans. Software Eng. 23(7), 437–444 (1997)
Cohen, M.B., Colbourn, C.J., Gibbons, P.B., Mugridge, W.B.: Constructing test suites for interaction testing. In: Proceedings of the International Conference on Software Engineering, pp. 38–48, May 2003
Fraser, G., Arcuri, A.: Whole test suite generation. IEEE Trans. Software Eng. 39(2), 276–291 (2013). http://doi.ieeecomputersociety.org/10.1109/TSE.2012.14
Fraser, G., Staats, M., McMinn, P., Arcuri, A., Padberg, F.: Does automated white-box test generation really help software testers? In: International Symposium on Software Testing and Analysis, ISSTA 2013, Lugano, Switzerland, July 15–20, 2013, pp. 291–301 (2013). http://doi.acm.org/10.1145/2483760.2483774
Garvin, B.J., Cohen, M.B., Dwyer, M.B.: Evaluating improvements to a meta-heuristic search for constrained interaction testing. Empirical Software Eng. 16(1), 61–102 (2011)
Harman, M., Jia, Y., Zhang, Y.: Achievements, open problems and challenges for search based software testing (keynote). In: 2015 IEEE Eighth International Conference on Software Testing, Verification and Validation (2015)
Harman, M., Mansouri, S.A., Zhang, Y.: Search-based software engineering: Trends, techniques and applications. ACM Comput. Surv. 45(1), 11 (2012). http://doi.acm.org/10.1145/2379776.2379787
Harman, M., McMinn, P.: A theoretical and empirical study of search-based testing: Local, global, and hybrid search. IEEE Trans. Software Eng. 36(2), 226–247 (2010)
Kuhn, D.R., Okun, V.: Pseudo-exhaustive testing for software. In: SEW. pp. 153–158. IEEE Computer Society (2006)
Kuhn, D.R., Wallace, D.R., Gallo, A.M.: Software fault interactions and implications for software testing. IEEE Trans. Software Eng. 30(6), 418–421 (2004)
McMinn, P.: Search-based software test data generation: a survey. Softw. Test. Verif. Reliab. 14(2), 105–156 (2004). http://dx.doi.org/10.1002/stvr.294
Petke, J., Cohen, M., Harman, M., Yoo, S.: Practical combinatorial interaction testing: empirical findings on efficiency and early fault detection. IEEE Trans. Software Eng. 99, 1–1 (2015)
Petke, J., Cohen, M.B., Harman, M., Yoo, S.: Efficiency and early fault detection with lower and higher strength combinatorial interaction testing. In: European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering. ESEC/FSE 2013, pp. 26–36. ACM, Saint Petersburg, Russian Federation, August 2013
Qu, X., Cohen, M.B., Rothermel, G.: Configuration-aware regression testing: an empirical study of sampling and prioritization. In: Proceedings of the International Symposium on Software Testing and Analysis, pp. 75–86 (2008)
Qu, X., Cohen, M.B., Woolf, K.M.: Combinatorial interaction regression testing: A study of test case generation and prioritization. In: ICSM, pp. 255–264. IEEE (2007)
Tillmann, N., de Halleux, J.: White-box testing of behavioral web service contracts with Pex. In: Proceedings of the 2008 Workshop on Testing, Analysis, and Verification of Web Services and Applications, held in conjunction with the ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2008), TAV-WEB 2008, Seattle, Washington, USA, 21 July 2008, pp. 47–48 (2008). http://doi.acm.org/10.1145/1390832.1390840
Tonella, P.: Evolutionary testing of classes. In: Proceedings of the ACM/SIGSOFT International Symposium on Software Testing and Analysis, ISSTA 2004, Boston, Massachusetts, USA, 11–14 July 2004, pp. 119–128 (2004). http://doi.acm.org/10.1145/1007512.1007528
Yilmaz, C., Cohen, M.B., Porter, A.: Covering arrays for efficient fault characterization in complex configuration spaces. IEEE Trans. Software Eng. 31(1), 20–34 (2006)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Petke, J. (2015). Testing Django Configurations Using Combinatorial Interaction Testing. In: Barros, M., Labiche, Y. (eds) Search-Based Software Engineering. SSBSE 2015. Lecture Notes in Computer Science(), vol 9275. Springer, Cham. https://doi.org/10.1007/978-3-319-22183-0_18
Download citation
DOI: https://doi.org/10.1007/978-3-319-22183-0_18
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-22182-3
Online ISBN: 978-3-319-22183-0
eBook Packages: Computer ScienceComputer Science (R0)