skip to main content
research-article

Improving Conformance of Web Services: A Constraint-based Model-driven Approach

Authors Info & Claims
Published:27 March 2023Publication History
Skip Abstract Section

Abstract

Web services have been widely used to develop complex distributed software systems in the context of Service Oriented Architecture (SOA). As a standard for describing Web services, the Web Service Description Language (WSDL) provides a universal mechanism to describe the service’s functionalities for the service consumers. However, the current WSDL only provides the description of the interfaces to a Web Service without any restrictions or assumptions on how to properly invoke the service, resulting in divergent understanding of the Web service’s behavior between the service developer and service consumer. A particular challenge is how to make explicit the various behavior assumptions and restrictions of a service (for the user), and make sure that the service implementation conforms to them (for the developer). In this article, we propose a constraint-based model-driven approach to improving the behavior conformance of Web services. In our approach, constraints are introduced in an extended WSDL, called CxWSDL, to formally and explicitly express the implicit restrictions and assumptions on the behavior of a Web service, and then the predefined constraints are used to derive test cases in a model-driven manner to test the service implementation’s conformance to its behavior constraints from the user’s perspective. An empirical study involving four real-life Web services was conducted to evaluate the effectiveness of our approach, and four actual inconsistencies were discovered.

REFERENCES

  1. [1] Aichernig Bernhard K. and Schumi Richard. 2019. Property-based testing of web services by deriving properties from business-rule models. Softw. Syst. Model. 18, 2 (2019), 889911.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. [2] Alsmadi Izzat, AlEroud Ahmed, and Saifan Ahmad A.. 2021. Fault-based testing for discovering SQL injection vulnerabilities in web applications. Int. J. Inf. Comput. Secur. 16, 1/2 (2021), 5162.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. [3] Apilli Bellanov S., Richardson Lydia, and Alexander Cory. 2009. Fault-based combinatorial testing of web services. In Proceedings of the 24th ACM SIGPLAN Conference Companion on Object Oriented Programming Systems Languages and Applications (OOPSLA’09). ACM, 731732.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. [4] Athira B. and Samuel Philip. 2010. Web services regression test case prioritization. In Proceedings of the International Conference on Computer Information Systems and Industrial Management Applications (CISIM’10). IEEE, 438443.Google ScholarGoogle ScholarCross RefCross Ref
  5. [5] Belli Fevzi, Endo Andre Takeshi, Linschulte Michael, and Simao Adenilso. 2014. A holistic approach to model-based testing of web service compositions. Softw.: Pract. Exper. 44, 2 (2014), 201234.Google ScholarGoogle ScholarCross RefCross Ref
  6. [6] Belli Fevzi and Linschulte Michael. 2008. Event-driven modeling and testing of web services. In Proceedings of the 32nd Annual IEEE International Computer Software and Applications Conference (COMPSAC’08). IEEE, 11681173.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. [7] Bertolino Antonia and Polini Andrea. 2005. The audition framework for testing web services interoperability. In Proceedings of the 31st EUROMICRO Conference on Software Engineering and Advanced Applications (EUROMICRO’05). IEEE, 134142.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. [8] Bozkurt Mustafa, Harman Mark, and Hassoun Youssef. 2013. Testing and verification in service-oriented architecture: A survey. Softw. Test. Verif. Reliab. 23, 4 (2013), 261313.Google ScholarGoogle ScholarCross RefCross Ref
  9. [9] Chaturvedi Animesh and Binkley David. 2021. Web service slicing: Intra and inter-operational analysis to test changes. IEEE Trans. Serv. Comput. 14, 3 (2021), 930943.Google ScholarGoogle ScholarCross RefCross Ref
  10. [10] Chen Lin, Wang Ziyuan, Xu Lei, Lu Hongmin, and Xu Baowen. 2010. Test case prioritization for web service regression testing. In Proceedings of the 5th IEEE International Symposium on Service Oriented System Engineering (SOSE’10). IEEE, 173178.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. [11] Chen Yixiong, Yang Yang, Lei Zhanyao, Xia Mingyuan, and Qi Zhengwei. 2021. Bootstrapping automated testing for RESTful web services. In Proceedings of the 24th International Conference on Fundamental Approaches to Software Engineering (FASE’21). Springer, 4666.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. [12] Chinnici Roberto, Moreau Jean-Jacques, Ryman Arthur, and Weerawarana Sanjiva. 2007. Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language. Retrieved from https://www.w3.org/TR/wsdl/.Google ScholarGoogle Scholar
  13. [13] Christensen Erik, Curbera Francisco, Meredith Greg, and Weerawarana Sanjiva. 2001. Web Services Description Language (WSDL) 1.1. Retrieved from https://www.w3.org/TR/2001/NOTE-wsdl-20010315.Google ScholarGoogle Scholar
  14. [14] Corporation IBM. 2022. IBM Integration Bus overview. Retrieved from https://www.ibm.com/docs/en/integration-bus/10.0?topic=overview-integration-bus-introduction.Google ScholarGoogle Scholar
  15. [15] Dalal Siddhartha R., Jain Ashish, Karunanithi Nachimuthu, Leaton J. M., Lott Christopher M., Patton Gardner C., and Horowitz Bruce M.. 1999. Model-based testing in practice. In Proceedings of the International Conference on Software Engineering (ICSE’99). IEEE, 285294.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. [16] Moura Leonardo De and Bjørner Nikolaj. 2008. Z3: An efficient SMT solver. In Proceedings of the 14th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS’08). Springer, 337340.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. [17] Elghondakly Roaa A., Moussa Sherin M., and Badr Nagwa L.. 2021. The DSW model: An efficient approach for single web services modeling. In Proceedings of the 10th International Conference on Intelligent Computing and Information Systems (ICICIS’20). 500505.Google ScholarGoogle ScholarCross RefCross Ref
  18. [18] Endo André Takeshi, Linschulte Michael, Simão Adenilso da Silva, and Souza Simone do Rocio Senger de. 2010. Event- and coverage-based testing of web services. In Proceedings of the 4th International Conference on Secure Software Integration and Reliability Improvement Companion (SSIRI-C’10). IEEE, 6269.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. [19] Endo Andre Takeshi and Simao Adenilso. 2011. Model-based testing of service-oriented applications via state models. In Proceedings of the International Conference on Services Computing (SCC’11). IEEE, 432439.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. [20] Hadley Marc. 2009. Web Application Description Language. Retrieved from https://www.w3.org/Submission/wadl/.Google ScholarGoogle Scholar
  21. [21] Heckel Reiko and Mariani Leonardo. 2005. Automatic conformance testing of web services. In Proceedings of the 8th International Conference on Fundamental Approaches to Software Engineering. Springer, 3448.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. [22] Hou Kejia, Bai Xiaoying, Lu Hao, Li Shufang, and Zhou Lizhu. 2013. Web service test data generation using interface semantic contract. Chin. J. Softw. 24, 9 (2013), 20202041.Google ScholarGoogle Scholar
  23. [23] Initiative OpenAPI. 2021. OpenAPI Specification v3.1.0. Retrieved from https://spec.openapis.org/oas/latest.html.Google ScholarGoogle Scholar
  24. [24] Jia Jingting. 2017. Research on Behavior Model Driven Test Case Generation Technique for Service Compositions. Master’s thesis. University of Science and Technology Beijing, Beijing, China.Google ScholarGoogle Scholar
  25. [25] Jiang Ying, Xin Guomao, Shan Jinhui, and Xie Bing. 2004. Research on a testing technology based on design-by-contract. Chin. J. Softw. 15, suppl. (2004), 130137.Google ScholarGoogle Scholar
  26. [26] Jokhio M. Shaban, Sun Jing, Dobbie Gillian, and Hu Tianming. 2017. Goal-based testing of semantic web services. Inf. Softw. Technol. 83 (2017), 113.Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. [27] Joshi Mayur. 2022. About SOAP Web Services in Oracle Applications Cloud. Retrieved from https://docs.oracle.com/en/cloud/saas/financials/22c/oeswf/about-soap-web-services-in-oracle-applications-cloud.html#u30005103.Google ScholarGoogle Scholar
  28. [28] Keum ChangSup, Kang Sungwon, Ko In-Young, Baik Jongmoon, and Choi Young-Il. 2006. Generating test cases for web services using extended finite state machine. In Proceedings of the 18th IFIP International Conference on Testing of Software and Communicating Systems (TestCom’06). Springer, 103117.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. [29] Kiran Mariam and Simons Anthony J. H.. 2014. Model-based testing for composite web services in cloud brokerage scenarios. In Proceedings of the 3rd European Conference on Service-Oriented and Cloud Computing (ESOCC’14). Springer, 190205.Google ScholarGoogle Scholar
  30. [30] Lin Xintang, Zhang Haibo, Xia Hui, Yu Liangjiang, Fang Xiangyan, Chen Xuan, and Wang Zhikai. 2020. Test case minimization for regression testing of composite service based on modification impact analysis. In Proceedings of the 17th International Conference on Web Information Systems and Applications (WISA’20). Springer, 1526.Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. [31] Liu Dongmei, Wu Xian, Zhang Xin, Zhu Hong, and Bayley Ian. 2016. Monic testing of web services based on algebraic specifications. In Proceedings of the IEEE Symposium on Service-Oriented System Engineering (SOSE’16). IEEE, 2433.Google ScholarGoogle ScholarCross RefCross Ref
  32. [32] Martin David, Burstein Mark, Hobbs Jerry, Lassila Ora, McDermott Drew, McIlraith Sheila, Narayanan Srini, Paolucci Massimo, Parsia Bijan, Payne Terry, Sirin Evren, Srinivasan Naveen, and Sycara Katia. 2004. OWL-S: Semantic markup for web services. W3C Memb. Subm. 22, 4 (2004). Retrieved from http://www.ai.sri.com/daml/services/owl-s/1.2/overview/.Google ScholarGoogle Scholar
  33. [33] McIlraith Sheila A., Son Tran Cao, and Zeng Honglei. 2001. Semantic web services. IEEE Intell. Syst. 16, 2 (2001), 4653.Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. [34] Microsoft. 2022. Develop Service-oriented Applications with WCF. Retrieved from https://docs.microsoft.com/en-us/dotnet/framework/wcf/whats-wcf.Google ScholarGoogle Scholar
  35. [35] Abadeh Maryam Mooraei. 2021. Genetic-based web regression testing: An ontology-based multi-objective evolutionary framework to auto-regression testing of web applications. Serv. Orient. Comput. Applic. 15, 1 (2021), 5574.Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. [36] Niknejad Naghmeh, Ismail Waidah, Ghani Imran, Nazari Behzad, Bahari Mahadi, and CheHussin Ab Razak Bin. 2020. Understanding service-oriented architecture (SOA): A systematic literature review and directions for further investigation. Inf. Syst. 91 (2020), 101491:1–101491:27.Google ScholarGoogle ScholarCross RefCross Ref
  37. [37] Palomo-Lozano Francisco, Estero-Botaro Antonia, Medina-Bulo Inmaculada, and Núñez Manuel. 2018. Test suite minimization for mutation testing of WS-BPEL compositions. In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO’18). ACM, 14271434.Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. [38] Rao Prasad and Kasani Pavankumar. 2022. Modernizing legacy WCF applications to CoreWCF using Porting Assistant for .NET. Retrieved from https://aws.amazon.com/cn/blogs/modernizing-with-aws/migrate-wcf-apps-to-wcfcore-using-porting-assistant/.Google ScholarGoogle Scholar
  39. [39] Sheng Quan Z., Maamar Zakaria, Yao Lina, Szabo Claudia, and Bourne Scott. 2014. Behavior modeling and automated verification of web services. Inf. Sci. 258 (2014), 416433.Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. [40] Siavashi Faezeh, Truscan Dragos, and Vain Jüri. 2018. Vulnerability assessment of web services with model-based mutation testing. In Proceedings of the IEEE International Conference on Software Quality, Reliability and Security (QRS’18). IEEE, 301312.Google ScholarGoogle ScholarCross RefCross Ref
  41. [41] Sneed Harry M. and Huang Shihong. 2006. WSDLTest—A tool for testing web services. In Proceedings of the 8th IEEE International Symposium on Web Site Evolution (WSE’06). IEEE, 1421.Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. [42] Spencer Sam. 2022. CoreWCF 1.0 has been Released, WCF for .NET Core and .NET 5+. Retrieved from https://devblogs.microsoft.com/dotnet/corewcf-v1-released/.Google ScholarGoogle Scholar
  43. [43] Sun Chang-ai, Dai Hepeng, Wang Guan, Towey Dave, Chen Tsong Yueh, and Cai Kai-Yuan. 2022. Dynamic random testing of web services: A methodology and evaluation. IEEE Trans. Serv. Comput. 15, 2 (2022), 736751.Google ScholarGoogle ScholarCross RefCross Ref
  44. [44] Sun Chang-ai, Fu An, Liu Yiqiang, Wen Qing, Wang Zuoyi, Wu Peng, and Chen Tsong Yueh. 2020. An iterative metamorphic testing technique for web services and case studies. Int. J. Web Grid Serv. 16, 4 (2020), 364392.Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. [45] Sun Chang-ai, Li Meng, Jia Jingting, and Han Jun. 2018. Constraint-based model-driven testing of web services for behavior conformance. In Proceedings of the 16th International Conference on Service-Oriented Computing (ICSOC’18). Springer, 543559.Google ScholarGoogle ScholarCross RefCross Ref
  46. [46] Sun Chang-ai, Pan Lin, Wang Qiaoling, Liu Huai, and Zhang Xiangyu. 2017. An empirical study on mutation testing of WS-BPEL programs. Comput. J. 60, 1 (2017), 143158.Google ScholarGoogle ScholarCross RefCross Ref
  47. [47] Sun Chang-ai, Wang Guan, Cai Kai-Yuan, and Chen Tsong Yueh. 2012. Towards dynamic random testing for web services. In Proceedings of the 36th Annual Computer Software and Applications Conference (COMPSAC’12). IEEE, 164169.Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. [48] Sun Chang-ai, Wang Guan, Mu Baohong, Liu Huai, Wang Zhaoshun, and Chen Tsong Yueh. 2012. A metamorphic relation-based approach to testing web services without oracles. Int. J. Web Serv. Res. 9, 1 (2012), 5173.Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. [49] Sun Chang-ai, Wang Guan, Wen Qing, Towey Dave, and Chen Tsong Yueh. 2016. MT4WS: An automated metamorphic testing system for web services. Int. J. High Perform. Comput. Netw. 9, 1/2 (2016), 104115.Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. [50] Sun Chang-ai, Zhang Xin, Shang Yan, and Aiello Marco. 2015. Integrating transactions into BPEL service compositions: An aspect-based approach. ACM Trans. Web 9, 2 (2015), 9:1–9:31.Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. [51] Sun Chang-ai, Zhao Yan, Pan Lin, He Xiao, and Towey Dave. 2016. A transformation-based approach to testing concurrent programs using UML activity diagrams. Softw.: Pract. Exper. 46, 4 (2016), 551576.Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. [52] Sun Chang-ai, Zhao Yan, Pan Lin, Liu Huai, and Chen Tsong Yueh. 2018. Automated testing of WS-BPEL service compositions: A scenario-oriented approach. IEEE Trans. Serv. Comput. 11, 4 (2018), 616629.Google ScholarGoogle ScholarCross RefCross Ref
  53. [53] Tsai Wei-Tek, Paul Ray, Wang Yamin, Fan Chun, and Wang Dong. 2002. Extending WSDL to facilitate web services testing. In Proceedings of the 7th IEEE International Symposium on High-Assurance Systems Engineering (HASE’02). IEEE, 171172.Google ScholarGoogle ScholarCross RefCross Ref
  54. [54] Viglianisi Emanuele, Dallago Michael, and Ceccato Mariano. 2020. RESTTESTGEN: Automated black-box testing of RESTful APIs. In Proceedings of the 13th International Conference on Software Testing, Validation and Verification (ICST’20). IEEE, 142152.Google ScholarGoogle ScholarCross RefCross Ref
  55. [55] Wang Pengwei, Ding Zhijun, Jiang Changjun, and Zhou Mengchu. 2014. Constraint-aware approach to web service composition. IEEE Trans. Syst. Man Cyber.: Syst. 44, 6 (2014), 770784.Google ScholarGoogle ScholarCross RefCross Ref
  56. [56] Wu Ching-Seh and Huang Chi-Hsin. 2013. The web services composition testing based on extended finite state machine and UML model. In Proceedings of the 5th International Conference on Service Science and Innovation (ICSSI’13). IEEE, 215222.Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. [57] Xu Lei, Chen Lin, and Xu Baowen. 2011. Testing web services based on user requirements. Chin. J. Comput. 34, 6 (2011), 10291040.Google ScholarGoogle ScholarCross RefCross Ref
  58. [58] Yoon Tom and Jeong Bong-Keun. 2018. Service oriented architecture (SOA) implementation: Success factors and realized benefits. Int. J. Inf. Syst. Serv. Sect. 10, 2 (2018), 121.Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. [59] Zhai Ke, Jiang Bo, Chan W. K., and Tse T. H.. 2010. Taking advantage of service selection: A study on the testing of location-based web services through test case prioritization. In Proceedings of the 8th IEEE International Conference on Web Services (ICWS’10). IEEE, 211218.Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. [60] Zhang Guangquan, Rong Mei, and Zhang Jun. 2007. A business process of web services testing method based on UML2. 0 activity diagram. In Proceedings of the Workshop on Intelligent Information Technology Application (IITA’07). IEEE, 5965.Google ScholarGoogle Scholar
  61. [61] Zheng Yunhui, Zhang Xiangyu, and Ganesh Vijay. 2013. Z3-str: A Z3-based string solver for web application analysis. In Proceedings of the 9th Joint Meeting on the Foundations of Software Engineering (ESEC/FSE’13). ACM, 114124.Google ScholarGoogle ScholarDigital LibraryDigital Library
  62. [62] Zhong Hua, Zhang Lingming, and Khurshid Sarfraz. 2019. TestSage: Regression test selection for large-scale web service testing. In Proceedings of the 12th IEEE International Conference on Software Testing, Validation and Verification (ICST’19). IEEE, 430440.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Improving Conformance of Web Services: A Constraint-based Model-driven Approach

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM Transactions on the Web
        ACM Transactions on the Web  Volume 17, Issue 2
        May 2023
        170 pages
        ISSN:1559-1131
        EISSN:1559-114X
        DOI:10.1145/3589222
        Issue’s Table of Contents

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 27 March 2023
        • Online AM: 19 January 2023
        • Accepted: 8 December 2022
        • Revised: 5 September 2022
        • Received: 18 August 2020
        Published in tweb Volume 17, Issue 2

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article
      • Article Metrics

        • Downloads (Last 12 months)129
        • Downloads (Last 6 weeks)18

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Full Text

      View this article in Full Text.

      View Full Text

      HTML Format

      View this article in HTML Format .

      View HTML Format
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!