ThingWorx Flow > SDK ThingWorx Flow > Test des connecteurs
Test des connecteurs
commande test
La commande test est utilisée pour tester les artefacts de connecteur. Les artefacts utilisent des options communes et spécifiques. La commande test prend le type de l'artefact en tant que sous-commande. La commande test offre les commandes suivantes :
Commandes
Description
flow test action <name>
Teste l'action nommée <nom>.
flow test connection <name>
Teste la connexion nommée <nom>.
flow test lookup <name> <method>
Teste la fonction de lookup nommée <méthode> dans le lookup <nom>.
flow test oauth <name>
Teste l'OAuth nommée <nom>.
flow test trigger <name> <method>
Teste le déclencheur nommé <nom>.
La commande test offre les options suivantes :
Options
Description
Type de données
--version
Affiche le numéro de version.
[booléen]
--help
Affiche l'aide.
[booléen]
--timeout
Délai d'attente de l'opération. L'option --timeout spécifie un délai d'attente en millisecondes (30000 ms par défaut). Cette option veille à ce que le code se termine dans la durée spécifiée avec enregistrement des erreurs, telles que invocations manquées de rappels.
[par défaut : 30000]
--logLevel,-1
Définit le niveau de consignation.
[par défaut : "info"]
La CLI de ThingWorx Flow vous permet de tester des artefacts individuels avant de déployer le connecteur sur le serveur. Ceci vous permet de vous assurer que vos artefacts correctement avant de.
Les cas de test sont écrits à l'aide de l'infrastructure mocha-cha. Mocha est utilisé pour définir la suite de tests et chai comme bibliothèque d'assertions. Tous les cas de test sont définis dans le dossier testData sous un dossier de tests d'artefact particulier.
La commande test vous permet de tester vos artefacts dans la CLI de ThingWorx Flow.
Pour tester un artefact, exécutez les commandes suivantes depuis votre invite de commande :
1. cd <user project root directory>
2. flow test <artifactType> <name>
Test d'une configuration OAuth
Le test d'une configuration OAuth s'effectue via un navigateur, chaque fournisseur de service OAuth utilisant un formulaire différent pour accepter les informations d'identification de l'utilisateur. La CLI exécute en interne un serveur Web express pour traiter les réponses envoyées par l'IdP en ce qui concerne le succès ou l'échec de l'authentification.
Pour tester une configuration OAuth, procédez comme suit :
1. Depuis votre répertoire de projet, exécutez la commande suivante :
flow test oauth <oauth name>
Une fois la connexion établie, la fenêtre de navigateur du validateur OAuth s'ouvre. Pour plus d'informations, reportez-vous à l'exemple dans le didacticiel.
2. Sélectionnez la configuration à tester, puis cliquez sur Validate OAuth configuration, ou cliquez sur Exit.
Test d'une connexion
Pour tester une connexion, procédez comme suit :
1. Depuis votre répertoire de projet, exécutez la commande suivante :
npm install
2. Créez un fichier de données de test dans le package et renseignez-le avec les informations de votre fournisseur de services.
Le fichier contient des exemples de données pour le test nommé connectionTestData dans <projectDir>\test\testData comme illustré dans le code ci-dessous.
module.exports = {
sampleInput : {
email : 'your-email-id-here',
subscription_id:'your-subscription-id',
account_url: 'your-account-url',
token: 'your-token'
},
sampleOutput : {
handle: {
email : 'your-email-id-here',
subscription_id:'your-subscription-id',
account_url: 'your-account-url',
token: 'your-token'
} }
}
3. Exécutez la commande test avec les options suivantes :
Options
Description
Type de données
--version
Affiche le numéro de version.
[booléen]
--help
Affiche l'aide.
[booléen]
--timeout
Délai d'attente de l'opération. L'option --timeout spécifie un délai d'attente en millisecondes (30000 ms par défaut). Cette option veille à ce que le code se termine dans la durée spécifiée avec enregistrement des erreurs, telles que invocations manquées de rappels.
[par défaut : 30000]
--logLevel,-1
Définit le niveau de consignation.
[par défaut : "info"]
--artifactVersion,-v
Version de l'artefact à tester.
Sans objet
--projectDir,-d
Répertoire parent du projet.
Sans objet
--input,-i
Nom de la variable d'entrée.
Sans objet
--output,-o
Nom de la variable de sortie attendue.
Sans objet
--testDataFile,-f
Chemin du fichier testData.
Sans objet
--save,-s
Enregistre dans le magasin d'informations d'identification pour un utilisateur.
Sans objet
--noSchemaValidation,-n
Désactive la validation de schéma.
[par défaut : faux]
L'exécution du test produit une sortie si les méthodes connect et validate aboutissent. La commande vérifie également que l'entrée correspond au schéma d'entrée et que la sortie correspond à la sortie attendue.
Test des lookups
La structure et le versionnage des lookups diffèrent des autres artefacts. Le nom lui-même sert de version. Si une nouvelle fonctionnalité est requise, un nouveau lookup avec un nouveau nom est créé dans le fichier JavasSript des lookups.avec la commande suivante :
flow test lookup <name> <method>
Les options disponibles sont les suivantes :
Options
Description
Type de données
--version
Affiche le numéro de version.
[booléen]
--help
Affiche l'aide.
[booléen]
--timeout
Délai d'attente de l'opération. L'option --timeout spécifie un délai d'attente en millisecondes (30000 ms par défaut). Cette option veille à ce que le code se termine dans la durée spécifiée avec enregistrement des erreurs, telles que invocations manquées de rappels.
[par défaut : 30000]
--logLevel,-1
Définit le niveau de consignation.
[par défaut : "info"]
--projectDir,-d
Répertoire parent du projet.
Sans objet
--connection,-c
UID de la connexion à injecter.
Sans objet
--access_token,-a
Nom de la variable de sortie attendue.
Sans objet
--input,-i
Chemin du fichier testData.
Sans objet
--output,-o
Nom de la variable de sortie attendue.
Sans objet
--testDataFile,-f
Chemin du fichier testData.
Sans objet
--searchById
ID à utiliser pour la recherche.
Sans objet
--searchByValue
Valeur à utiliser pour la recherche.
Sans objet
--filter
Filtre à utiliser pour la recherche des éléments.
Sans objet
Les lookups utilisent deux options de recherche, searchById et searchByValue, ainsi que les trois options suivantes en ce qui concerne la pagination.
Le lookup renvoie toutes les données à la fois ucune action requise pour cette option.
API de pagination prise en charge par l'applicationcode du lookup appelle l'API getNextPage et lui transmet des arguments qui permettent au service de renvoyer les données de la page suivante. Ces informations sont transmises au lookup lorsque l'utilisateur clique sur l'option Load More dans la liste déroulante pour les valeurs de champ de lookup.
Pagination non prise en chargel'application interroge les données et le service de lookup tronqu les données pour n'afficher que les enregistrements de la page en cours et de toutes les pages précédentes.
Test des actions
Le test des actions est similaire au test des lookups.
Pour tester une action, procédez comme suit :
1. Ecrivez un exemple d'entrée et un exemple de sortie JSON dans un fichier de données de test. Pour obtenir des exemples d'entrée et de sortie, consultez l' Annexe B.
2. Depuis votre répertoire de projet, exécutez la commande test avec les options suivantes :
Options
Description
Type de données
--version
Affiche le numéro de version.
[booléen]
--help
Affiche l'aide.
[booléen]
--timeout
Délai d'attente de l'opération. L'option --timeout spécifie un délai d'attente en millisecondes (30000 ms par défaut). Cette option veille à ce que le code se termine dans la durée spécifiée avec enregistrement des erreurs, telles que invocations manquées de rappels.
[par défaut : 30000]
--logLevel,-1
Définit le niveau de consignation.
[par défaut : "info"]
--artifactVersion,-v
Version de l'artefact à tester.
[par défaut : "v1"]
--connection,-c
UID de la connexion à injecter.
Sans objet
--access_token,-a
Nom de la variable de sortie attendue.
Sans objet
--projectDir,-d
Répertoire parent du projet.
[par défaut : "."]
--input,-i
Chemin du fichier testData.
Sans objet
--output,-o
Nom de la variable de sortie attendue.
Sans objet
--testDataFile,-f
Chemin du fichier testData.
Sans objet
--noSchemaValidation,-n
Désactive la validation de schéma.
[par défaut : faux]
Test des déclencheurs
Le test d'un déclencheur est légèrement différent de celui d'une action, d'une connexion ou d'un lookup. Vous pouvez exécuter la commande test avec les options suivantes :
Le tableau suivant décrit les différentes options disponibles pour tester les déclencheurs.
Options
Description
Type de données
--version
Affiche le numéro de version.
[booléen]
--help
Affiche l'aide.
[booléen]
--timeout
Délai d'attente de l'opération. L'option --timeout spécifie un délai d'attente en millisecondes (30000 ms par défaut). Cette option veille à ce que le code se termine dans la durée spécifiée avec enregistrement des erreurs, telles que invocations manquées de rappels.
[par défaut : 30000]
--logLevel,-1
Définit le niveau de consignation.
[par défaut : "info"]
--artifactVersion,-v
Version de l'artefact à tester.
[par défaut : "v1"]
--connection,-c
UID de la connexion à injecter.
Sans objet
--access_token,-a
Nom de la variable de sortie attendue.
Sans objet
--projectDir,-d
Répertoire parent du projet.
[par défaut : "."]
--input,-i
Nom de la variable d'entrée.
Sans objet
--output,-o
Nom de la variable de sortie attendue.
Sans objet
--testDataFile,-f
Chemin du fichier testData.
Sans objet
--noSchemaValidation,-n
Désactive la validation de schéma.
[par défaut : faux]
--polling,-p
Indique que le déclencheur est un déclencheur d'interrogation.
Sans objet
--event,-e
Evénement à tester.
Sans objet
--mockData,-m
Nom de la variable contenant l'élément mockdata pour un événement.
Sans objet
--interval,-t
Intervalle de temps en secondes au terme duquel activer le déclencheur.
[par défaut : 15]
--stopAfter,-s
Nombre maximal d'appels du déclencheur.
[par défaut : 1]
Vous devez spécifier la méthode que vous souhaitez tester. Pour les déclencheurs d'interrogation, les méthodes sont execute et activate.
Des exemples utiles pour le test de divers artefacts sont disponibles à l'.