Generating mock skeletons for lightweight Web service testing : a thesis presented in partial fulfilment of the requirements for the degree of Doctor of Philosophy in Computer Science at Massey University, Manawatū New Zealand

dc.confidentialEmbargo : Noen_US
dc.contributor.advisorGuesgen, Hans
dc.contributor.authorRandunu Pathirannehelage, Thilini Bhagya
dc.date.accessioned2021-03-07T22:28:06Z
dc.date.accessioned2021-07-02T04:12:46Z
dc.date.available2021-03-07T22:28:06Z
dc.date.available2021-07-02T04:12:46Z
dc.date.issued2021
dc.description.abstractModern application development allows applications to be composed using lightweight HTTP services. Testing such an application requires the availability of services that the application makes requests to. However, continued access to dependent services during testing may be restrained, making adequate testing a significant and non-trivial engineering challenge. The concept of Service Virtualisation is gaining popularity for testing such applications in isolation. It is a practise to simulate the behaviour of dependent services by synthesising responses using semantic models inferred from recorded traffic. Replacing services with their respective mocks is, therefore, useful to address their absence and move on application testing. In reality, however, it is unlikely that fully automated service virtualisation solutions can produce highly accurate proxies. Therefore, we recommend using service virtualisation to infer some attributes of HTTP service responses. We further acknowledge that engineers often want to fine-tune this. This requires algorithms to produce readily interpretable and customisable results. We assume that if service virtualisation is based on simple logical rules, engineers would have the potential to understand and customise rules. In this regard, Symbolic Machine Learning approaches can be investigated because of the high provenance of their results. Accordingly, this thesis examines the appropriateness of symbolic machine learning algorithms to automatically synthesise HTTP services' mock skeletons from network traffic recordings. We consider four commonly used symbolic techniques: the C4.5 decision tree algorithm, the RIPPER and PART rule learners, and the OCEL description logic learning algorithm. The experiments are performed employing network traffic datasets extracted from a few different successful, large-scale HTTP services. The experimental design further focuses on the generation of reproducible results. The chosen algorithms demonstrate the suitability of training highly accurate and human-readable semantic models for predicting the key aspects of HTTP service responses, such as the status and response headers. Having human-readable logics would make interpretation of the response properties simpler. These mock skeletons can then be easily customised to create mocks that can generate service responses suitable for testing.en_US
dc.identifier.urihttp://hdl.handle.net/10179/16473
dc.publisherMassey Universityen_US
dc.rightsThe Authoren_US
dc.subjectApplication softwareen
dc.subjectTestingen
dc.subjectDevelopmenten
dc.subjectWeb servicesen
dc.subjectMachine learningen
dc.subjectAlgorithmsen
dc.subject.anzsrc461208 Software testing, verification and validationen
dc.titleGenerating mock skeletons for lightweight Web service testing : a thesis presented in partial fulfilment of the requirements for the degree of Doctor of Philosophy in Computer Science at Massey University, Manawatū New Zealanden_US
dc.typeThesisen_US
massey.contributor.authorRandunu Pathirannehelage, Thilini Bhagyaen_US
thesis.degree.disciplineComputer Scienceen_US
thesis.degree.grantorMassey Universityen_US
thesis.degree.levelDoctoralen_US
thesis.degree.nameDoctor of Philosophy (PhD)en_US
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Randunu PathirannehelagePhDThesis.pdf
Size:
12 MB
Format:
Adobe Portable Document Format
Description: