The runJUnitTests operation allows for running JUnit tests on Mule Servers. Although this operation was not designed for use with Mavenized Mule projects, it will run tests on them as well, and could serve to prove that the <provided> scope jars are indeed provided by the Mule server.
This operation should run on the Mule server where the project will be deployed. The FDMULE_HOME
property is used to find the libraries that are necessary to compile and run the Mule project tests.
The project tests will be built using javac and other command line tools.
This operation should be run after the buildMule operation, and on the same endpoint, environment, and instance.
Make sure that the JDK HOME specified on the endpoint is a JDK of the required version.
...
testApplication
operation runs Maven, defaulting to the Test Phase.
Target Properties
Property Name
Required
Description
FDMULE_APP_NAME
FDMULE_HOME
Property Name | Property Code | Required | Description |
---|
Project Properties
Maven Home |
| No | If it is desired to use an external Maven, fill in the Maven Home here. Otherwise, the internal Maven 3.05 will be used. |
Maven Environment Script |
| No | If necessary, provide a script to source variables for use by the Maven Plugin. |
Inputs
Input Name | Input Code | Required | Description |
---|
Project |
Location |
|
| No |
Path to the project which contains a POM file. If a relative path is given, a path inside of the |
FDMULE_HTTP_PORT
HTTP port to use when running JUnit tests. This should be a different number than the one that is usually used to run the application on the server. This only works if
${http.port} is used in your HTTP Connector.
Outputs
Output Name
Required
Run Phases |
| Yes | Space-delimited Maven life cycle phases to execute, (e.g. |
Arguments |
| No | Space-delimited argument list (e.g. |
Artifacts
This operation produces artifacts that will be stored in the artifacts repository.
Endpoint Selection
This operation will select all available endpoints associated to the environment/instanceTarget.
Endpoint Execution
This operation will execute on any one of the selected endpoints and will be random in the determination of which one.