  Service virtualisation is a method to create virtual service models that can
mimic interaction behaviors between a system under test and the target system.
With service virtualisation, the development team can get access to the
production-like conditions whenever and however many times they need, enabling
frequent and comprehensive testing. Previous techniques for service
virtualisation have relied on explicitly modelling the target services by a
service expert and require detailed knowledge of message protocol and
structure. However, neither of these are necessarily available.
  In this thesis, we introduce our novel opaque response generation approach.
This approach enables services to be virtualised automatically without any
expert knowledge or documentation of system protocol and interaction
behaviours. Given a collection of interactions exchanged between a system under
test and a target real service, our approach can 1) organise the same type of
interactions into the same cluster and derive a cluster prototype for each
cluster; 2) search a given incoming request for its the most similar request in
the interaction library; 3) learn knowledge from the incoming request and the
recorded interaction; and 4) generate a response. A framework and
proof-of-concept implementation of our opaque response generation approach is
described. Experimental results show our opaque response generation approach is
able to automatically generate accurate responses in real time with an accuracy
rate over 99% on average.
