Lamela Seijas, Pablo and Li, Huiqing and Thompson, Simon (2013) Towards Property-Based Testing of RESTful Web Services. Technical report. School of Computing, University of Kent (Unpublished) (KAR id:34865)
PDF (Full paper to accompany poster in Erlang Workshop 2013 proceedings.)
Supplemental Material
Language: English
This work is licensed under a Creative Commons Attribution-NoDerivatives 4.0 International License.
|
|
Download this file (PDF/200kB) |
Preview |
Request a format suitable for use with assistive technology e.g. a screenreader |
Abstract
Developing APIs as Web Services over HTTP implies adding an extra layer to software, compared to the ones that we would
need to develop an API distributed as, for example, a library.
This additional layer must be included in testing too, but this implies that the software under test has an additional complexity due both to the need to use an intermediate protocol in tests and to the need to test compliance with the constraints imposed by that protocol: in this case the constraints defined by the REST architectural style.
On the other hand, these requirements are common to all the Web Services, and because of that, we should be able to abstract this aspect of the testing model so that we can reuse it in testing any Web Service.
In this paper, as a first step towards automating the testing of Web Services over HTTP, we describe a practical mechanism and model for testing RESTful Web Services without side effects and give an example of how we successfully adapted that mechanism to test two different existing Web Services: Storage Room by Thriventures and Google Tasks by Google. For this task we have used Erlang together with state machine models in the property-based testing tool Quviq QuickCheck, implemented using the statem module.
Item Type: | Reports and Papers (Technical report) |
---|---|
Uncontrolled keywords: | web services, REST, Representational State Transfer, Quviq, QuickCheck, Erlang, state machine, generator, property-based testing |
Subjects: | Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming, > QA76.76 Computer software |
Divisions: | Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing |
Depositing User: | S. Thompson |
Date Deposited: | 26 Jul 2013 21:05 UTC |
Last Modified: | 05 Nov 2024 10:18 UTC |
Resource URI: | https://kar.kent.ac.uk/id/eprint/34865 (The current URI for this page, for reference purposes) |
- Link to SensusAccess
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):