Application of Inference Rules to a Software Requirements Ontology to Generate Software Test Cases

  • Vladimir Tarasov
  • He Tan
  • Muhammad Ismail
  • Anders Adlemo
  • Mats Johansson
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10161)


Testing of a software system is resource-consuming activity. One of the promising ways to improve the efficiency of the software testing process is to use ontologies for testing. This paper presents an approach to test case generation based on the use of an ontology and inference rules. The ontology represents requirements from a software requirements specification, and additional knowledge about components of the software system under development. The inference rules describe strategies for deriving test cases from the ontology. The inference rules are constructed based on the examination of the existing test documentation and acquisition of knowledge from experienced software testers. The inference rules are implemented in Prolog and applied to the ontology that is translated from OWL functional-style syntax to Prolog syntax. The first experiments with the implementation showed that it was possible to generate test cases with the same level of detail as the existing, manually produced, test cases.


Inference rules Ontology OWL Prolog Requirement specification Test case generation 



The research reported in this paper has been financed by grant #20140170 from the Knowledge Foundation (Sweden).


  1. 1.
    Anand, S., Burke, E., Chen, T., Clark, J., Cohen, M., Grieskamp, W., Harman, M., Harrold, M., McMinn, P.: An orchestrated survey on automated software test case generation. J. Syst. Softw. 86(8), 1978–2001 (2013)CrossRefGoogle Scholar
  2. 2.
    Bratko, I.: Prolog Programming for Artificail Intelligence, 4th edn. Pearson Education, Upper Saddle River (2011)Google Scholar
  3. 3.
    CapGemini, HP, Sogeti: World quality report 2015–16, 80 p. (2015)Google Scholar
  4. 4.
    Enoiu, E., Causevic, A., Ostrand, T., Weyuker, E., Sundmark, D., Pettersson, P.: Automated test generation using model-checking: an industrial evaluation. Int. J. Softw. Tools Technol. Transf. 1(1), 1–19 (2014)Google Scholar
  5. 5.
    Freitas, A., Vieira, R.: An ontology for guiding performance testing. In: 2014 IEEE/WIC/ACM International Joint Conferences on Web Intelligence (WI) and Intelligent Agent Technologies (IAT), pp. 400–407 (2014)Google Scholar
  6. 6.
    Happel, H.J., Seedorf, S.: Applications of ontologies in software engineering. In: Proceedings of Workshop on Sematic Web Enabled Software Engineering (SWESE) on the ISWC, pp. 5–9 (2006)Google Scholar
  7. 7.
    Holt, N., Briand, L., Torkar, R.: Empirical evaluations on the cost-effectiveness of state-based testing: an industrial case study. Inf. Softw. Technol. 56, 890–910 (2014)CrossRefGoogle Scholar
  8. 8.
    Judge Business School, Cambridge University: Cambridge university study states software bugs cost economy $312 billion per year (2013). Accessed 22 Sept 2016
  9. 9.
    Kaur, A., Vig, V.: Systematic review of automatic test case generation by UML diagrams. Int. J. Eng. Res. Technol. (IJERT) 1(6), 17 (2012)Google Scholar
  10. 10.
    Laera, L., Tamma, V., Bench-Capon, T., Semeraro, G.: SweetProlog: a system to integrate ontologies and rules. In: Antoniou, G., Boley, H. (eds.) RuleML 2004. LNCS, vol. 3323, pp. 188–193. Springer, Heidelberg (2004). doi: 10.1007/978-3-540-30504-0_15 CrossRefGoogle Scholar
  11. 11.
    Motik, B., Patel-Schneider, P., Parsia, B.: OWL 2 Web Ontology Language: Structural Specification and Functional-Style Syntax. W3C, 2nd edn. (2012)Google Scholar
  12. 12.
    Mussa, M., Ouchani, S., Al Sammane, W., Hamou-Lhadj, A.: A survey of model-driven testing techniques. In: QSIC 2009 9th International Conference on Quality Software, 24–25 August 2009, Jeju, South Korea, pp. 167–172 (2009)Google Scholar
  13. 13.
    Nasser, V.H., Du, W., MacIsaac, D.: Knowledge-based software test generation. In: The 21st International Conference on Software Engineering and Knowledge Engineering, Boston, USA, pp. 312–317, July 2009Google Scholar
  14. 14.
    Nguyen, C.D., Perini, A., Tonella, P.: Ontology-based test generation for multiagent systems. In: Proceedings of the 7th international Joint Conference on Autonomous Agents and Multiagent Systems, vol. 3, pp. 1315–1320 (2008)Google Scholar
  15. 15.
    Papadakis, N., Stravoskoufos, K., Baratis, E., Petrakis, E., Plexousakis, D.: PROTON: a prolog reasoner for temporal ontologies in OWL. Expert Syst. Appl. 38(12), 14660–14667 (2011)CrossRefGoogle Scholar
  16. 16.
    Tan, H., Muhammad, I., Tarasov, V., Adlemo, A., Johansson, M.: Development and evaluation of a software requirements ontology. In: 7th International Workshop on Software Knowledge-SKY 2016 in Conjunction with the 9th International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management-IC3K 2016 (2016)Google Scholar
  17. 17.
    Wang, Y., Bai, X., Li, J., Huang, R.: Ontology-based test case generation for testing web services. In: Eighth International Symposium on Autonomous Decentralized Systems, ISADS 2007, pp. 43–50. IEEE (2007)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Vladimir Tarasov
    • 1
  • He Tan
    • 1
  • Muhammad Ismail
    • 1
  • Anders Adlemo
    • 1
  • Mats Johansson
    • 2
  1. 1.School of EngineeringJönköping UniversityJönköpingSweden
  2. 2.Saab ABJönköpingSweden

Personalised recommendations