Puneet Varma (Editor)

Wilma (software)

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Stable release
  
1.4.137 / Jan 25, 2016

Operating system
  
Cross-platform

Website
  
epam.github.io/Wilma/

Written in
  
Java

License
  
GPL License

Type
  
Service virtualization / Service stub / Transparent Proxy / Test tool

Wilma is a Service virtualization software tool that computer programmers and testers use for developing and testing other software. It sits between software components, software services, microservices, as a transparent proxy, and captures the communication traffic between the software components. Based on its actual configuration, evaluates the captured messages and decides between proxying the request or providing response by itself, as a service stub. Therefore, it is a combined Transparent Proxy and Service Stub. It is written in Java, and Open Sourced under the license GPL.

Contents

Situations when Wilma helps

  • In case there is component that communicates to other components (SOA environment or by simply using 3rd party services/microservices) but need to be tested without the availability of other components, Wilma can act as stub. The environment can be - among others - a local development environment, a CI test environment, or an integration test environment
  • In similar case, if some of the components are available but some not, Wilma can stub the missing ones, meanwhile proxying the request to the available components
  • If there is a new feature in a 3rd party component/service, that will be developed later, and not yet available, and if the interface is defined, Wilma can emulate the new feature of the 3rd party component/service, and the feature in the owned component can be developed without waiting for the implementation of the feature in the 3rd party component/service
  • It is possible to emulate special behavior of 3rd party components/services like: timeouts, slow or bad answers, special - error-nous - answers and error codes - without doing special test environment setup changes, and even if forcing the 3rd party component/service to produce such special answers would be hard/impossible
  • It is possible to substitute both the request and the response messages real-time, partially and/or completely.
  • Also - as it can log the messages - it helps testers/developers in troubleshooting, since the logged messages can be analysed - also such recorded messages can be used later as base of stub responses
  • Main capabilities

  • Used for HTTP and HTTPS communication channels, including 2-way SSL connections.
  • Any message types and contents can be used: HTML, XML, SOAP, JSON, REST, etc.
  • Highly configurable, on-the-fly, both via its UI and API
  • Suitable for both automated and manual tests
  • By using the provided interfaces, product/project specific expansions (special message response creators and response content formatter for the stub) can easily be added to the tool
  • References

    Wilma (software) Wikipedia