If you want to read the PDF, try requesting it from the authors.

Abstract

Web Services represent a recent promising software technology that provides application-to-application interaction. Web Services are described using Web Services Description Language (WSDL), and the Universal Description, Discovery, and Integration directory provides a registry of Web Services descriptions. Testing Web Services is important for both the Web Service provider and the Web Service user. This paper proposes a technique for testing Web Services using mutation analysis. The technique is based on applying mutation operators to the WSDL document in order to generate mutated Web Service interfaces that will be used to test Web Service. For this purpose, we define selective mutant operators that are specific to WSDL documents. Our empirical results have shown the usefulness of this technique.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

Conference Paper
With the proliferation of researches on web services and their increasing applications in industries comes the opportunity to study the analysis and design method of web service-based systems systematically. Our objective is to propose a method for modeling web service-based systems to conduct the practice of developing the application systems. In this paper, we introduce the relevant research on web services. We propose a method for modeling web service-based systems. We also present the Petri net theory and take it as theoretical foundation of the modeling method. Next, we present the analysis method to assess the correctness of the model constructed by the method. Finally, we present a case study on modeling the web service-based airport emergency management information system via the modeling method and verify the correctness of the model.
Conference Paper
Summary form only given. Web services present a promising software technology, which provides application-to-application interaction. They are based on communication protocols, service descriptions, and service discovery and are built on top of existing Web protocols and based on open XML standards. Web services are described using Web Services Description Language (WSDL), and the universal description, discovery, and integration directory provide a registry of Web services descriptions. Testing Web services is important for both the Web service provider and the Web service user. This paper proposes a technique for testing Web services using mutation analysis. The technique is based on applying mutation operators to the WSDL document in order to generate mutated Web service interfaces that are used to test the Web service. For this purpose, we define mutant operators that are specific to WSDL documents. Our empirical results have shown the usefulness of this technique.
Article
Full-text available
A novel technique for automatically generating test data is presented. The technique is based on mutation analysis and creates test data that approximate relative adequacy. It is a fault-based technique that uses algebraic constraints to describe test cases designed to find particular types of faults. A set of tools (collectively called Godzilla) that automatically generates constraints and solves them to create test cases for unit and module testing has been implemented. Godzilla has been integrated with the Mothratesting system and has been used as an effective way to generate test data that kill program mutants. The authors present an initial list of constraints and discuss some of the problems that have been solved to develop the complete implementation of the technique.
Article
Full-text available
Web Services are composed by linking together service providers and requestors. To ensure interoperability, the requestor's requirements for a service have to be matched against a service description offered by the provider.Besides data types and operation signatures, this requires service specifications to include behavioral information, like contracts specifying pre- and post-conditions of (required or provided) operations.In this paper, we propose to visualize contracts by graph transformation rules which blend well with a UML-based notion of data models and signatures. The operational interpretation of rules could turn out to be useful for simulating the behavior of required components in unit testing.
Conference Paper
Full-text available
The cost of developing and deploying web applications is reduced by dynamically integrating other heterogeneous self-contained web services. However, the malfunctioning of such systems would cause severe losses. This paper presents a technique for building reliable web applications composed of web services. All relevant web services are linked to the component under test at the testing time; thus, the availability of suitable web services is guaranteed at invocation time. In our technique, a web application and its composed components are specified by a two-level abstract model. The web application is represented as Task Precedence Graph (TPG) and the behavior of the composed components is represented as a Timed Labeled Transition System (TLTS). Three sets of test sequences are generated from the WSDL files, the TLTS and the TPG representing the integrated components and the whole web application. Test cases are executed automatically using a test execution algorithm and a test framework is also presented. This framework wraps the test cases with SOAP interfaces and validates the testing results obtained from the web services.
Conference Paper
Full-text available
Web services received significant attention recently and several important Web service platforms such as .NET are now available. The testing and evaluation of Web services are important for both service providers and subscribers. This paper proposes an XML-based object-oriented testing framework Coyote to test Web services rapidly. Coyote consists of two parts: test master and test engine. The test master allows testers to specify test scenarios and cases as well as performing various analyses such as dependency analysis, completeness and consistency, and converts WSDL specifications into test scenarios. The test engine interacts with the Web services under test, and provides tracing information. The test framework incorporates concepts from object-oriented application frameworks so that it is relatively easy to change test scenarios/cases. Due to the distributed nature of Web services, Coyote focuses on integration testing instead of module testing.
Conference Paper
Full-text available
The paradigm of Web services that transforms the Internet from a repository of data into a repository of services has been gathering significant momentum in both academia and industry in recent years. However, as more and more Web services are published on the Internet, how to choose the most appropriate Web service components from the sea of ever-changing, unpredictable, and largely uncontrollable Web services poses a big challenge. we propose a mobile agent-based approach that selects reliable Web service components in a cost-effective manner.
Article
Applications that utilize the broker-based architecture are often composed of several components that need to be tested both separately and together. An important activity during testing is the assessment of the adequacy of test sets. Testers use one or more adequacy criteria for this activity. Traditional test adequacy criteria have several limitations for commercial use. A test adequacy criterion based on interface mutation has been identified and a testing method that uses this criterion proposed. This method incorporates elements from a component’s interface description for per-forming interface mutation. The interface mutation based test adequacy criterion was evaluated empirically and compared with control flow-based coverage criteria for their relative effectiveness in revealing errors and the cost incurred in developing the test sets. A formal analysis of the fault-detection ability of the testing methods was also carried out.
Article
Web services have the potential to dramatically reduce the complexities and costs of software integration projects. The most obvious and perhaps most significant difference between Web services and traditional applications is that Web services use a common communication infrastructure, XML and SOAP, to communicate through the Internet. The method of communication introduces complexities to the problems of verifying and validating Web services that do not exist in traditional software. This paper presents a new approach to testing Web services based on data perturbation. Existing XML messages are modified based on rules defined on the message grammars, and then used as tests. Data perturbation uses two methods to test Web services: data value perturbation and interaction perturbation. Data value perturbation modifies values according to the data type. Interaction perturbation classifies the communication messages into two categories: RPC communication and data communication. At present, this method is restricted to peer-to-peer interactions. The paper presents preliminary empirical evidence of its usefulness.
Article
This paper presents a new compile-time analysis that enables a testing methodology for white-box coverage testing of error recovery code (i.e., exception handlers) in Java web services using compilerdirected fault injection. The analysis allows compiler-generated instrumentation to guide the fault injection and to record the recovery code exercised. (An injected fault is experienced as a Java exception.) The analysis (i) identifies the exception-flow 'def-uses' to be tested in this manner, (ii) determines the kind of fault to be requested at a program point, and (iii) finds appropriate locations for code instrumentation. The analysis incorporates refinements that establish sufficient context sensitivity to ensure relatively precise def-use links and to eliminate some spurious def-uses due to demonstrably infeasible control flow. A runtime test harness calculates test coverage of these links using an exception def-catch metric. Experiments with the methodology demonstrate the utility of the increased precision in obtaining good test coverage on a set of moderately-sized Java web services benchmarks.
Testing Web Services
  • T Arnold
T. Arnold, "Testing Web Services," Proc. Software Test Automation Conference, San Francisco, CA, March 2003.
Testing Web Services: Methods for Ensuring Server and Client Reliability
  • L Chen
  • J Clune
L. Chen and J. Clune, "Testing Web Services: Methods for Ensuring Server and Client Reliability," Web Sphere Journal, February 2005.
Interface Mutation Software Testing Verification and Reliability
  • S Ghosh
  • A P Mathur
S. Ghosh and A. P. Mathur, " Interface Mutation, " Software Testing Verification and Reliability, 11:227- 247, 2001.
A Roadmap for Web Services Management
  • V Mccarthy
V. McCarthy, "A Roadmap for Web Services Management," www.oetrends.com, November 2002.
Web Service Architecture
W3C, "Web Service Architecture," W3C working Draft, www.w3.org/tr/ws-arch/, 2003.
Testing Web Services
  • M Munro
  • N Looker
  • J Xu
M. Munro, N. Looker, and J. Xu, "Testing Web Services," 16 th IFIP Int. Conference on Testing of Communicating Systems, Oxford, UK, 2004.
A Simple Approach for Testing Web Services Based Applications
  • A Tarhini
  • H Fouchal
  • N Mansour
A. Tarhini, H. Fouchal, and N. Mansour, "A Simple Approach for Testing Web Services Based Applications," Proc. Innovative Internet Community Systems Conference (LNCS, Springer), Paris, June 20-22, 2005.
Web Services Description Language (WSDL) 1.1," W3C Note 15
W3C, "Web Services Description Language (WSDL) 1.1," W3C Note 15, www.w3.org/tr/wsdl, 2001.