Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Presentation will begin momentarily…. 2 Service Stub and Transparent Proxy: Wilma INNOVATION WE MUST DO AUGUST 24, 2015.

Similar presentations


Presentation on theme: "1 Presentation will begin momentarily…. 2 Service Stub and Transparent Proxy: Wilma INNOVATION WE MUST DO AUGUST 24, 2015."— Presentation transcript:

1 1 Presentation will begin momentarily…

2 2 Service Stub and Transparent Proxy: Wilma INNOVATION WE MUST DO AUGUST 24, 2015

3 3 AGENDA Test Situation 1 Requirements to address the issues 2 Tool: Wilma 3 How it works? 4 Capabilities / Features 5 Future 6

4 4 THE TEST SITUATION – COMPONENT/SERVICE

5 5

6 6

7 7 ? ?

8 8 ? missing new feature

9 9 THE TEST SITUATION – COMPONENT/SERVICE

10 10 THE TEST SITUATION – COMPONENT/SERVICE -No answer -Malformed answer -invalid content-length -invalid content-type -Errors in response -E50x, E404, etc -Delayed answer, Timeout

11 11 THE TEST SITUATION – COMPONENT/SERVICE

12 12 THE TEST SITUATION – COMPONENT/SERVICE

13 13 THE TEST SITUATION – COMPONENT/SERVICE

14 14 THE TEST SITUATION – @ MICROSERVICES

15 15

16 16 REQUIREMENTS We must monitor the messages between the components/services so we need a Transparent Proxy that captures the messages We must generate component/service responses so we need a highly configurable Service Stub That means static and dynamic response contents Any message types and contents: HTML, XML, SOAP, JSON, REST, etc We must handle HTTP, HTTPS requests, even 2-way SSL We need intelligent selection between Proxying the request or generate Stub response We need easy integration with CI environments, test-automation friendly configuration The solution should be robust and very stable Shall offer extensibility

17 17 THE SOLUTION THE SOLUTION: WILMA

18 18 HOW WILMA WORKS?

19 19 HOW WILMA WORKS?

20 20 HOW WILMA WORKS? – Information-flow Diagram

21 21 HOW WILMA WORKS? – Transparent Proxy

22 22 HOW WILMA WORKS? – Message Logging

23 23 HOW WILMA WORKS? – Handling a Request as Proxy

24 24 HOW WILMA WORKS? – Handling a Request as Stub

25 25 HOW WILMA WORKS? – Configuring the Stub Service Configuration file: XML files Request/Response pairs are defined as Condition Descriptors and Response Descriptors Request – Condition Descriptors Built-in Conditions (check header / body content) Several conditions can be combined (and/or) and negated External conditions can be used Response – Response Generation Template files can be used (static answer) Built-in Template Formatters can be used to alter the templates Response can be generated (dynamic answer) External Template Generators and Template Formatters can be used And so on (delay the response, malformed responses, Exxx responses…)

26 26 HOW WILMA WORKS? – Configuring the Stub Service

27 27 HOW WILMA WORKS? – Configuring the Stub Service

28 28 WHERE WILMA CAN BE USED? Local development environment – analyse messages, stub services CI environment – can stub surrounding services of the tested service Integration test environment – analyse messages, stub services

29 29 HOW WILMA CAN BE USED? As proxy (even if STUB mode is used only):

30 30 HOW WILMA CAN BE USED? Single Wilma instance can serve many services in parallel

31 31 HOW WILMA CAN BE USED? Even can be used with microservices

32 32 SHOW WILMA IN ACTION! Config1 + https://info.epam.com/en/news.htmlhttps://info.epam.com/en/news.html Config2 + https://info.epam.com/registerhttps://info.epam.com/register

33 33 WHAT WILMA OFFERS IN ADDITION?

34 34 OPERATION MODES Wilma 1 Exclusive PROXY 2 Exclusive STUB 3

35 35 OPERATION MODE – Exclusive PROXY Mode

36 36 OPERATION MODE – Exclusive STUB Mode

37 37 WHAT WILMA OFFERS IN ADDITION? INTERCEPTORS Both Request and Response can be intercepted Any operation on the intercepted message can be performed External Interceptor classes can be used

38 38 INTERCEPTOR EXAMPLE – A CIRCUIT BREAKER Need stub configuration – to provide response instead of B, in case B is in bad shape An interceptor evaluates the responses If Service B gave bad response: – turns on STUB for Service B – After a defined timout turns off STUB for Service B

39 39 WHAT WILMA OFFERS IN ADDITION? RUN-TIME CONFIGURATION Stub configuration Upload and download templates, classes, jars, messages

40 40 RUN-TIME CONFIGURATION OF WILMA VIA UI

41 41 RUN-TIME CONFIGURATION OF WILMA VIA UI

42 42 WHAT WILMA OFFERS IN ADDITION? BROWSE/SEARCH ON LOGGED MESSAGES Via Wilma UI itself Via Wilma Message Search Application

43 43 MESSAGE BROWSING VIA WILMA UI

44 44 MESSAGE BROWSING VIA WILMA MESSAGE SEARCH Wilma Message Search application high performance search engine, offers searching of the request-response pairs those were logged by Wilma Correlation ID

45 45 WHAT WILMA OFFERS IN ADDITION? API Stub configuration Upload and download templates, classes, jars, messages Load information

46 46 WILMA HTTP API

47 47 WILMA-SERVICE-API LIBRARY

48 48 WILMA-SERVICE-API LIBRARY

49 49 WHAT WILMA OFFERS IN ADDITION? Built-in Safeguards Maintains amount of messages saved onto disk – no run out of disk space

50 50 WHAT WILMA OFFERS IN ADDITION? Built-in Safeguards Self protecting machanisms against overload Load information is available

51 51 WHAT WILMA OFFERS IN ADDITION?

52 52 WHAT WILMA OFFERS IN ADDITION? Open Sourced under license GNU GPL v3.0 Available via GitHub, including documentation Feedbacks are welcome and as well as contribution

53 53 FUTURE OF WILMA.NET API Service API lib enhancements Promotion within EPAM and for Customers Depends on the OS community

54 54 Any Questions? Wilma is @ https://github.com/epam/Wilma AUGUST 24, 2015


Download ppt "1 Presentation will begin momentarily…. 2 Service Stub and Transparent Proxy: Wilma INNOVATION WE MUST DO AUGUST 24, 2015."

Similar presentations


Ads by Google