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.
- [1] . 2019. Property-based testing of web services by deriving properties from business-rule models. Softw. Syst. Model. 18, 2 (2019), 889–911.Google Scholar
Digital Library
- [2] . 2021. Fault-based testing for discovering SQL injection vulnerabilities in web applications. Int. J. Inf. Comput. Secur. 16, 1/2 (2021), 51–62.Google Scholar
Digital Library
- [3] . 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, 731–732.Google Scholar
Digital Library
- [4] . 2010. Web services regression test case prioritization. In Proceedings of the International Conference on Computer Information Systems and Industrial Management Applications (CISIM’10). IEEE, 438–443.Google Scholar
Cross Ref
- [5] . 2014. A holistic approach to model-based testing of web service compositions. Softw.: Pract. Exper. 44, 2 (2014), 201–234.Google Scholar
Cross Ref
- [6] . 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, 1168–1173.Google Scholar
Digital Library
- [7] . 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, 134–142.Google Scholar
Digital Library
- [8] . 2013. Testing and verification in service-oriented architecture: A survey. Softw. Test. Verif. Reliab. 23, 4 (2013), 261–313.Google Scholar
Cross Ref
- [9] . 2021. Web service slicing: Intra and inter-operational analysis to test changes. IEEE Trans. Serv. Comput. 14, 3 (2021), 930–943.Google Scholar
Cross Ref
- [10] . 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, 173–178.Google Scholar
Digital Library
- [11] . 2021. Bootstrapping automated testing for RESTful web services. In Proceedings of the 24th International Conference on Fundamental Approaches to Software Engineering (FASE’21). Springer, 46–66.Google Scholar
Digital Library
- [12] . 2007. Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language. Retrieved from https://www.w3.org/TR/wsdl/.Google Scholar
- [13] . 2001. Web Services Description Language (WSDL) 1.1. Retrieved from https://www.w3.org/TR/2001/NOTE-wsdl-20010315.Google Scholar
- [14] . 2022. IBM Integration Bus overview. Retrieved from https://www.ibm.com/docs/en/integration-bus/10.0?topic=overview-integration-bus-introduction.Google Scholar
- [15] . 1999. Model-based testing in practice. In Proceedings of the International Conference on Software Engineering (ICSE’99). IEEE, 285–294.Google Scholar
Digital Library
- [16] . 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, 337–340.Google Scholar
Digital Library
- [17] . 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). 500–505.Google Scholar
Cross Ref
- [18] . 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, 62–69.Google Scholar
Digital Library
- [19] . 2011. Model-based testing of service-oriented applications via state models. In Proceedings of the International Conference on Services Computing (SCC’11). IEEE, 432–439.Google Scholar
Digital Library
- [20] . 2009. Web Application Description Language. Retrieved from https://www.w3.org/Submission/wadl/.Google Scholar
- [21] . 2005. Automatic conformance testing of web services. In Proceedings of the 8th International Conference on Fundamental Approaches to Software Engineering. Springer, 34–48.Google Scholar
Digital Library
- [22] . 2013. Web service test data generation using interface semantic contract. Chin. J. Softw. 24, 9 (2013), 2020–2041.Google Scholar
- [23] . 2021. OpenAPI Specification v3.1.0. Retrieved from https://spec.openapis.org/oas/latest.html.Google Scholar
- [24] . 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 Scholar
- [25] . 2004. Research on a testing technology based on design-by-contract. Chin. J. Softw. 15, suppl. (2004), 130–137.Google Scholar
- [26] . 2017. Goal-based testing of semantic web services. Inf. Softw. Technol. 83 (2017), 1–13.Google Scholar
Digital Library
- [27] . 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 Scholar
- [28] . 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, 103–117.Google Scholar
Digital Library
- [29] . 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, 190–205.Google Scholar
- [30] . 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, 15–26.Google Scholar
Digital Library
- [31] . 2016. Monic testing of web services based on algebraic specifications. In Proceedings of the IEEE Symposium on Service-Oriented System Engineering (SOSE’16). IEEE, 24–33.Google Scholar
Cross Ref
- [32] . 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 Scholar
- [33] . 2001. Semantic web services. IEEE Intell. Syst. 16, 2 (2001), 46–53.Google Scholar
Digital Library
- [34] . 2022. Develop Service-oriented Applications with WCF. Retrieved from https://docs.microsoft.com/en-us/dotnet/framework/wcf/whats-wcf.Google Scholar
- [35] . 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), 55–74.Google Scholar
Digital Library
- [36] . 2020. Understanding service-oriented architecture (SOA): A systematic literature review and directions for further investigation. Inf. Syst. 91 (2020), 101491:1–101491:27.Google Scholar
Cross Ref
- [37] . 2018. Test suite minimization for mutation testing of WS-BPEL compositions. In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO’18). ACM, 1427–1434.Google Scholar
Digital Library
- [38] . 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 Scholar
- [39] . 2014. Behavior modeling and automated verification of web services. Inf. Sci. 258 (2014), 416–433.Google Scholar
Digital Library
- [40] . 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, 301–312.Google Scholar
Cross Ref
- [41] . 2006. WSDLTest—A tool for testing web services. In Proceedings of the 8th IEEE International Symposium on Web Site Evolution (WSE’06). IEEE, 14–21.Google Scholar
Digital Library
- [42] . 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 Scholar
- [43] . 2022. Dynamic random testing of web services: A methodology and evaluation. IEEE Trans. Serv. Comput. 15, 2 (2022), 736–751.Google Scholar
Cross Ref
- [44] . 2020. An iterative metamorphic testing technique for web services and case studies. Int. J. Web Grid Serv. 16, 4 (2020), 364–392.Google Scholar
Digital Library
- [45] . 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, 543–559.Google Scholar
Cross Ref
- [46] . 2017. An empirical study on mutation testing of WS-BPEL programs. Comput. J. 60, 1 (2017), 143–158.Google Scholar
Cross Ref
- [47] . 2012. Towards dynamic random testing for web services. In Proceedings of the 36th Annual Computer Software and Applications Conference (COMPSAC’12). IEEE, 164–169.Google Scholar
Digital Library
- [48] . 2012. A metamorphic relation-based approach to testing web services without oracles. Int. J. Web Serv. Res. 9, 1 (2012), 51–73.Google Scholar
Digital Library
- [49] . 2016. MT4WS: An automated metamorphic testing system for web services. Int. J. High Perform. Comput. Netw. 9, 1/2 (2016), 104–115.Google Scholar
Digital Library
- [50] . 2015. Integrating transactions into BPEL service compositions: An aspect-based approach. ACM Trans. Web 9, 2 (2015), 9:1–9:31.Google Scholar
Digital Library
- [51] . 2016. A transformation-based approach to testing concurrent programs using UML activity diagrams. Softw.: Pract. Exper. 46, 4 (2016), 551–576.Google Scholar
Digital Library
- [52] . 2018. Automated testing of WS-BPEL service compositions: A scenario-oriented approach. IEEE Trans. Serv. Comput. 11, 4 (2018), 616–629.Google Scholar
Cross Ref
- [53] . 2002. Extending WSDL to facilitate web services testing. In Proceedings of the 7th IEEE International Symposium on High-Assurance Systems Engineering (HASE’02). IEEE, 171–172.Google Scholar
Cross Ref
- [54] . 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, 142–152.Google Scholar
Cross Ref
- [55] . 2014. Constraint-aware approach to web service composition. IEEE Trans. Syst. Man Cyber.: Syst. 44, 6 (2014), 770–784.Google Scholar
Cross Ref
- [56] . 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, 215–222.Google Scholar
Digital Library
- [57] . 2011. Testing web services based on user requirements. Chin. J. Comput. 34, 6 (2011), 1029–1040.Google Scholar
Cross Ref
- [58] . 2018. Service oriented architecture (SOA) implementation: Success factors and realized benefits. Int. J. Inf. Syst. Serv. Sect. 10, 2 (2018), 1–21.Google Scholar
Digital Library
- [59] . 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, 211–218.Google Scholar
Digital Library
- [60] . 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, 59–65.Google Scholar
- [61] . 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, 114–124.Google Scholar
Digital Library
- [62] . 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, 430–440.Google Scholar
Cross Ref
Index Terms
Improving Conformance of Web Services: A Constraint-based Model-driven Approach
Recommendations
Composing Web Services: A QoS View
An Internet application can invoke several services--a stock-trading Web service, for example, could invoke a payment service, which could then invoke an authentication service. Such a scenario is called a composite Web service, and it can be specified ...
Quality of Security Service for Web Services within SOA
SERVICES '09: Proceedings of the 2009 Congress on Services - IService-Oriented Architecture (SOA) is a paradigm for creating and encapsulating business processes in the form of loose-coupling, autonomous and abstracted services. Managing the non-functional requirements of SOA such as security, is an overarching ...
Optimal selection of web services for efficient qos driven web service compositions
ADCONS'11: Proceedings of the 2011 international conference on Advanced Computing, Networking and SecurityWeb services architecture enables the creation of larger composite services from simpler services. The providers of composite Web services with predefined composition plan involving different composition (flow or workflow) patterns, dynamically select ...






Comments