Skip to main content

Testing Django Configurations Using Combinatorial Interaction Testing

  • Conference paper
  • First Online:
Search-Based Software Engineering (SSBSE 2015)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9275))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 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. 2.

    Django is available at: https://www.djangoproject.com/.

  3. 3.

    CASA is available at: http://cse.unl.edu/~citportal/.

  4. 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. 5.

    Django tutorials are available at: https://www.djangoproject.com/.

  6. 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

  1. 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)

    Article  MATH  Google Scholar 

  2. 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

    Google Scholar 

  3. 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

    Article  Google Scholar 

  4. 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

  5. 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)

    Article  Google Scholar 

  6. 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)

    Google Scholar 

  7. 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

    Article  Google Scholar 

  8. 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)

    Article  Google Scholar 

  9. Kuhn, D.R., Okun, V.: Pseudo-exhaustive testing for software. In: SEW. pp. 153–158. IEEE Computer Society (2006)

    Google Scholar 

  10. 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)

    Article  Google Scholar 

  11. 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

    Article  Google Scholar 

  12. 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)

    Article  Google Scholar 

  13. 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

    Google Scholar 

  14. 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)

    Google Scholar 

  15. 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)

    Google Scholar 

  16. 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

  17. 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

  18. 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)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Justyna Petke .

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics