Hi all,

This is to disclose some of the changes that has been made to the initial
architecture, which was described in the previous email.

As described in the previous email, a XML descriptor file is parsed to the
testing framework and a Java model for a test case is built according to
the configurations defined in the descriptor file. Mock services creator is
used to generate mock endpoints according to the definitions of mock
services described in the descriptor file. Config modifier replaces the
actual mock endpoints by these mock endpoints. Then these configurations
are parsed to the unit testing framework agent which resides in the synapse
engine, through TCP transport.

Unit testing framework agent deploys the synapse artifacts referred in the
descriptor to the synapse engine, build the message context and mediate the
message context through deployed the synapse artifact. Mock endpoints are
also get called when required. The envelope and the property values of the
output message is asserted with the expected values defined in the
descriptor file, at the end of the mediation process. Finally the assertion
result is sent back to the client through the TCP transport.

The re-designed high- level architecture diagram of the project is attached
herewith.

On Mon, Oct 29, 2018 at 9:08 PM Hirushi Ekanayake <hiru...@wso2.com> wrote:

> Hi all,
>
> Apache Synapse is the core mediation engine of WSO2 ESB. Synapse
> configuration language is used in WSO2 ESB to build integration scenarios.
>
> One of the major limitations we have in WSO2 ESB is, it doesn't provide a
> built-in way to execute a unit test against a given synapse configuration
> artifact (ex. A sequence).
>
> My project is about delivering a framework for executing unit tests for
> Synapse artifacts. The process of the testing framework can be briefly
> described as follows.
>
> A XML descriptor file which describe a test case is parsed to the testing
> framework and a Java model for a test case is built according to the
> configurations defined in the descriptor file.
>
> The test descriptor file consists of,
>
>    -
>
>    Inputs (payload, properties, etc.)
>    -
>
>    Definitions of mock services
>    -
>
>    Pointers to synapse artifacts
>    -
>
>    Assertions
>
>
> The input payload is taken from the descriptor file and message context is
> populated with that. Synapse engine is started in background by the
> framework and the synapse artifacts referred in the descriptor are deployed
> to the engine. Then the generated message context is sent to this deployed
> artifacts and it is mediated through the sequences and mock endpoints are
> also get called when required. Finally the envelope and the property values
> of the output message is asserted with the expected values defined in the
> descriptor file.
>
> The high- level architecture diagram of the project is attached herewith.
>
> Regards,
> Hirushi Ekanayake
> Software Engineering Intern | WSO2
>
> Email : hiru...@wso2.com
> Mobile : +94767880119
> Web : http://wso2.com
>
> <http://wso2.com/signature>
>


-- 
Hirushi Ekanayake
Software Engineering Intern | WSO2

Email : hiru...@wso2.com
Mobile : +94767880119
Web : http://wso2.com

<http://wso2.com/signature>
_______________________________________________
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to