Configurer le scénario de test - 7.1

Guide utilisateur de Talend Data Services Platform Studio

author
Talend Documentation Team
EnrichVersion
7.1
EnrichProdName
Talend Data Services Platform
task
Création et développement
EnrichPlatform
Studio Talend

Procédure

  1. Double-cliquez sur le composant cConfig pour ouvrir sa vue Basic settings dans l'onglet Composant.
  2. Dans la liste Dependencies, ajoutez xmlunit-1.6.jar, qui peut être obtenu depuis le site http://www.xmlunit.org/ (en anglais). Notez que vous devez ajouter cette dépendance lors du test des messages XML. Cela permet de valider le contenu des messages XML par rapport au schéma.
  3. Double-cliquez sur le composant cProcessor afin d'afficher sa vue Basic settings dans l'onglet Component.
  4. Dans la zone Import, saisissez le code suivant pour importer les bibliothèques externes :
    import org.custommonkey.xmlunit.Diff;
    import org.custommonkey.xmlunit.XMLUnit;
    import java.io.FileReader;
    import java.io.File;
    Dans la zone Code, saisissez le code suivant pour comparer le fichier XML reçu et le fichier XML cible et retourner identical ou different.
    String in_xml = exchange.getIn().getBody(String.class);
    
    FileReader reference_file1_reader = new FileReader(new File(context.reference_file1));
    
    Diff diff = XMLUnit.compareXML(in_xml, reference_file1_reader);
    
    exchange.getIn().setBody(diff.identical() ? "identical" : "different");
  5. Double-cliquez sur le premier composant cDataset afin d'afficher sa vue Basic settings dans l'onglet Component.
  6. Dans la table Arguments, la ligne comportant la valeur context.input_file1 a automatiquement été ajoutée. Ajoutez une autre ligne "----------------" pour traiter l'entrée en un message.
    Notez que, lorsque vous utilisez le cDataset en tant que producteur de messages, si le message d'entrée contient de multiples lignes, vous devez ajouter un séparateur de lignes dans la vue Basic settings du cDataset. Le séparateur de lignes doit être le même que celui du fichier d'entrée, afin que le cDataset divise chaque message et effectue le test correctement. S'il n'y a qu'un message composé de plusieurs lignes dans le fichier d'entrée, vous devez également configurer le séparateur de lignes dans la vue Basic settings du cDataset, pour pouvoir le traiter comme un message. Si le séparateur de lignes n'est pas spécifié, chaque ligne de l'entrée sera traitée comme un message.
  7. Double-cliquez sur le premier composant cMock afin d'afficher sa vue Basic settings dans l'onglet Component.
  8. Cochez la case Simulate et sélectionnez cProcessor_1 pour produire le message.
  9. Double-cliquez sur le second cMock pour ouvrir sa vue Basic settings dans l'onglet Component.
  10. Cochez la case Validate message bodies et sélectionnez l'option Use Inline Table. Cliquez sur le bouton [+] pour ajouter une ligne à la table Message, puis saisissez "identical" dans le champ Value.
  11. Dans la vue Test cases, cliquez sur input_file1 dans le panneau de gauche et cliquez sur File Browse, dans le panneau de droite. Utilisez le fichier XML comme au début de cet exemple.
    Pour le fichier reference_file1, parcourez votre système jusqu'au fichier XML contenant les résultats attendus. Voici à quoi le fichier doit ressembler :
    	<Customer>
    		<Number>1</Number>
    		<FirstName>Fred</FirstName>
    		<LastName>Landis</LastName>
    		<Address>
    			<Street>Oakstreet</Street>
    			<City>Boston</City>
    			<ZIP>23320</ZIP>
    			<State>MA</State>
    		</Address>
    	</Customer>