Creating a Maven project for unit test - 6.1

Talend Real-time Big Data Platform Studio User Guide

EnrichVersion
6.1
EnrichProdName
Talend Real-Time Big Data Platform
task
Data Quality and Preparation
Design and Development
EnrichPlatform
Talend Studio

Unit tests will be put in a separate project. We need to switch to the Java perspective and create a simple maven-based project. For how to switch to the Java perspective, see GUI.

Follow these steps to create the Maven project:

  1. Right-click the blank area in the Package Explorer and select New>Project... in the context menu.

  2. The [New Project] wizard opens. Select Maven Project under the Maven node and click Next.

  3. In the Select project name and location view, the Use default Workspace location option is selected. Keep it and click Next.

  4. In the Select an Archetype view, the GroupId org.apache.maven.archetypes and ArtifactId maven-archetype-quickstart is selected. Keep the default settings and click Next.

  5. In the Specify Archetype parameters view, enter org.talend in the Group Id field and route-unit-test in the Artifact Id field. Click Finish. The project appears in the Package Explorer.

  6. Double-click the pom.xml file under the newly created project node to open it in the design workspace and edit it as shown below.

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>org.talend</groupId>
        <artifactId>route-unit-test</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.8.1</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.camel</groupId>
                <artifactId>camel-test</artifactId>
                <version>2.9.1</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-jdk14</artifactId>
                <version>1.6.1</version>
            </dependency>
            <dependency>
                <groupId>org.talend.camel</groupId>
                <artifactId>systemRoutines</artifactId>
                <version>1.0.0</version>
            </dependency>
            <dependency>
                <groupId>org.talend.camel</groupId>
                <artifactId>userRoutines</artifactId>
                <version>1.0.0</version>
            </dependency>
            <dependency>
                <groupId>org.example</groupId>
                <artifactId>SimpleRoute</artifactId>
                <version>0.2.0-SNAPSHOT</version>
                <type>jar</type>
            </dependency>
        </dependencies>
        <repositories>
            <repository>
                <id>repo-snapshot</id>
                <name>Snapshots bundles</name>
                <url>http://tadmin:tadmin@localhost:8082/archiva/repository/repo-snapshot/</url>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
        </repositories>
    </project>

    As is shown above, the Maven dependencies are:

    • Junit and Camel unit testing framework

    • Utility JAR files required for Talend ESB Route

    • Route JAR files published from the Studio

    In this use case we will use the Route in Talend Artifact repository directly, so it needs to be added into the pom.xml file as a repository. The username and password is put in the repository URL for simplicity. You can also specify it in your ${Maven_HOME}/conf/settings.xml.

  7. Save your pom.xml file.