METAMORPHIC TESTING FOR RESTFUL WEB API AND ITS SUPPORTING TOOL
In this paper, a metamorphic testing approach for RESTful Web API is proposed. The approach is proposed because the currently existing method took a more abstract and general approach which made it not easy to be implemented into a more practical testing tool. Without the availability of such too...
Saved in:
Main Author: | |
---|---|
Format: | Final Project |
Language: | Indonesia |
Online Access: | https://digilib.itb.ac.id/gdl/view/39261 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Institut Teknologi Bandung |
Language: | Indonesia |
id |
id-itb.:39261 |
---|---|
spelling |
id-itb.:392612019-06-25T10:11:28ZMETAMORPHIC TESTING FOR RESTFUL WEB API AND ITS SUPPORTING TOOL Iqbal Al Khowarizmi, Muhammad Indonesia Final Project testing, metamorphic, RESTful, API, tool. INSTITUT TEKNOLOGI BANDUNG https://digilib.itb.ac.id/gdl/view/39261 In this paper, a metamorphic testing approach for RESTful Web API is proposed. The approach is proposed because the currently existing method took a more abstract and general approach which made it not easy to be implemented into a more practical testing tool. Without the availability of such tools, practitioners who want to apply metamorphic testing to RESTful Web API would have to implement their own tools. The proposed approach is constructed by examining the general structure of metamorphic testing and how it could be applied in the context of RESTful Web API. The structure is then translated into a model to define a metamorphic testing, designed to be more easily implemented. Richardson Maturity Model is then used as reference to analyze the proposed approach to see to what extent the approach could generalize, or simply put, to what sort of RESTful Web API the approach could be applied. The analysis revealed that the proposed approach could generalize to API in Level 2 and Level 3 of RMM. To show how the proposed approach could be implemented into a functional tool, a prototypical design and implementation of a tool implementing the approach is also presented. The tool is built to help tester define and run metamorphic tests, and to show the results. The tool’s efficacy is then evaluated by running it against a sample API injected with faults, or more commonly known as mutation test. The mutation test is executed against test cases generated by the tool from defined metamorphic relations. The result of the mutation test showed that the tool is effective at killing some of the mutants. A careful examination on the result showed that the surviving mutants are those that didn’t alter the outputs or altered the outputs in such a way that it didn’t violate the defined metamorphic relations. text |
institution |
Institut Teknologi Bandung |
building |
Institut Teknologi Bandung Library |
continent |
Asia |
country |
Indonesia Indonesia |
content_provider |
Institut Teknologi Bandung |
collection |
Digital ITB |
language |
Indonesia |
description |
In this paper, a metamorphic testing approach for RESTful Web API is proposed. The
approach is proposed because the currently existing method took a more abstract and
general approach which made it not easy to be implemented into a more practical
testing tool. Without the availability of such tools, practitioners who want to apply
metamorphic testing to RESTful Web API would have to implement their own tools.
The proposed approach is constructed by examining the general structure of
metamorphic testing and how it could be applied in the context of RESTful Web API.
The structure is then translated into a model to define a metamorphic testing, designed
to be more easily implemented. Richardson Maturity Model is then used as reference
to analyze the proposed approach to see to what extent the approach could generalize,
or simply put, to what sort of RESTful Web API the approach could be applied. The
analysis revealed that the proposed approach could generalize to API in Level 2 and
Level 3 of RMM. To show how the proposed approach could be implemented into a
functional tool, a prototypical design and implementation of a tool implementing the
approach is also presented. The tool is built to help tester define and run metamorphic
tests, and to show the results. The tool’s efficacy is then evaluated by running it
against a sample API injected with faults, or more commonly known as mutation test.
The mutation test is executed against test cases generated by the tool from defined
metamorphic relations. The result of the mutation test showed that the tool is effective
at killing some of the mutants. A careful examination on the result showed that the
surviving mutants are those that didn’t alter the outputs or altered the outputs in such
a way that it didn’t violate the defined metamorphic relations. |
format |
Final Project |
author |
Iqbal Al Khowarizmi, Muhammad |
spellingShingle |
Iqbal Al Khowarizmi, Muhammad METAMORPHIC TESTING FOR RESTFUL WEB API AND ITS SUPPORTING TOOL |
author_facet |
Iqbal Al Khowarizmi, Muhammad |
author_sort |
Iqbal Al Khowarizmi, Muhammad |
title |
METAMORPHIC TESTING FOR RESTFUL WEB API AND ITS SUPPORTING TOOL |
title_short |
METAMORPHIC TESTING FOR RESTFUL WEB API AND ITS SUPPORTING TOOL |
title_full |
METAMORPHIC TESTING FOR RESTFUL WEB API AND ITS SUPPORTING TOOL |
title_fullStr |
METAMORPHIC TESTING FOR RESTFUL WEB API AND ITS SUPPORTING TOOL |
title_full_unstemmed |
METAMORPHIC TESTING FOR RESTFUL WEB API AND ITS SUPPORTING TOOL |
title_sort |
metamorphic testing for restful web api and its supporting tool |
url |
https://digilib.itb.ac.id/gdl/view/39261 |
_version_ |
1822925240729075712 |