Partager via


TestFlow class

Classe de prise en charge pour TestAdapter qui permet la construction simple d’une séquence de tests.

Remarques

L’appel adapter.send() ou adapter.test() crée un nouveau flux de test que vous pouvez regrouper des tests supplémentaires à l’aide d’une syntaxe Fluent.

const { TestAdapter } = require('botbuilder');

const adapter = new TestAdapter(async (context) => {
   if (context.text === 'hi') {
      await context.sendActivity(`Hello World`);
   } else if (context.text === 'bye') {
      await context.sendActivity(`Goodbye`);
   }
});

adapter.test(`hi`, `Hello World`)
       .test(`bye`, `Goodbye`)
       .then(() => done());

Propriétés

previous

Méthodes

assertNoReply(string, number)

Génère une assertion selon laquelle la logique de traitement des tours n’a pas généré de réponse à partir du bot, comme prévu.

assertReply(string | Partial<Activity> | TestActivityInspector, string, number)

Génère une assertion si la réponse des bots ne correspond pas au texte/à l’activité attendue.

assertReplyOneOf(string[], string, number)

Génère une assertion si la réponse des bots n’est pas l’une des chaînes candidates.

catch((reason: any) => void)

Ajoute une catch() clause à la chaîne de promesse de tests.

delay(number)

Insère un délai avant de continuer.

finally(() => void)

Ajoute une clause de fin. Notez que vous ne pouvez pas continuer à chaîner par la suite.

send(string | Partial<Activity>)

Envoie quelque chose au bot.

sendConversationUpdate()

Crée une activité de mise à jour de conversation et traite l’activité.

startTest()

Démarrez la séquence de test, en retournant une promesse à attendre.

test(string | Partial<Activity>, string | Partial<Activity> | (activity: Partial<Activity>, description?: string) => void, string, number)

Envoyez quelque chose au bot et s’attend à ce qu’il retourne avec une réponse donnée. Il s’agit simplement d’un wrapper autour des appels à send() et assertReply(). Il s’agit d’un modèle si courant qu’une assistance est fournie.

then(() => void, (err: any) => void)

Ajoute une then() étape à la chaîne de promesse de tests.

Détails de la propriété

previous

previous: Promise<void>

Valeur de propriété

Promise<void>

Détails de la méthode

assertNoReply(string, number)

Génère une assertion selon laquelle la logique de traitement des tours n’a pas généré de réponse à partir du bot, comme prévu.

function assertNoReply(description?: string, timeout?: number): TestFlow

Paramètres

description

string

(Facultatif) Description du cas de test. S’il n’est pas fourni, un sera généré.

timeout

number

(Facultatif) nombre de millisecondes à attendre pour obtenir une réponse du bot. Par défaut, la valeur est 3000.

Retours

Nouvel objet TestFlow qui ajoute cet échange à l’échange modélisé.

assertReply(string | Partial<Activity> | TestActivityInspector, string, number)

Génère une assertion si la réponse des bots ne correspond pas au texte/à l’activité attendue.

function assertReply(expected: string | Partial<Activity> | TestActivityInspector, description?: string, timeout?: number): TestFlow

Paramètres

expected

string | Partial<Activity> | TestActivityInspector

Texte ou activité attendu du bot. Il peut s’agir d’un rappel pour inspecter la réponse à l’aide d’une logique personnalisée.

description

string

(Facultatif) Description du cas de test. S’il n’est pas fourni, un sera généré.

timeout

number

(Facultatif) nombre de millisecondes à attendre pour obtenir une réponse du bot. Par défaut, la valeur est 3000.

Retours

Nouvel objet TestFlow qui ajoute cet échange à l’échange modélisé.

assertReplyOneOf(string[], string, number)

Génère une assertion si la réponse des bots n’est pas l’une des chaînes candidates.

function assertReplyOneOf(candidates: string[], description?: string, timeout?: number): TestFlow

Paramètres

candidates

string[]

Liste des réponses des candidats.

description

string

(Facultatif) Description du cas de test. S’il n’est pas fourni, un sera généré.

timeout

number

(Facultatif) nombre de millisecondes à attendre pour obtenir une réponse du bot. Par défaut, la valeur est 3000.

Retours

Nouvel objet TestFlow qui ajoute cet échange à l’échange modélisé.

catch((reason: any) => void)

Ajoute une catch() clause à la chaîne de promesse de tests.

function catch(onRejected?: (reason: any) => void): TestFlow

Paramètres

onRejected

(reason: any) => void

Code à exécuter si le test a lève une erreur.

Retours

Nouvel objet TestFlow qui ajoute cet échange à l’échange modélisé.

delay(number)

Insère un délai avant de continuer.

function delay(ms: number): TestFlow

Paramètres

ms

number

ms d’attendre.

Retours

Nouvel objet TestFlow qui ajoute cet échange à l’échange modélisé.

finally(() => void)

Ajoute une clause de fin. Notez que vous ne pouvez pas continuer à chaîner par la suite.

function finally(onFinally: () => void): Promise<void>

Paramètres

onFinally

() => void

Code à exécuter après la chaîne de test.

Retours

Promise<void>

Promesse représentant l’opération asynchrone.

send(string | Partial<Activity>)

Envoie quelque chose au bot.

function send(userSays: string | Partial<Activity>): TestFlow

Paramètres

userSays

string | Partial<Activity>

Texte ou activité simulant une entrée utilisateur.

Retours

Nouvel objet TestFlow qui ajoute cet échange à l’échange modélisé.

sendConversationUpdate()

Crée une activité de mise à jour de conversation et traite l’activité.

function sendConversationUpdate(): TestFlow

Retours

Nouvel objet TestFlow.

startTest()

Démarrez la séquence de test, en retournant une promesse à attendre.

function startTest(): Promise<void>

Retours

Promise<void>

Promesse représentant l’opération asynchrone.

test(string | Partial<Activity>, string | Partial<Activity> | (activity: Partial<Activity>, description?: string) => void, string, number)

Envoyez quelque chose au bot et s’attend à ce qu’il retourne avec une réponse donnée. Il s’agit simplement d’un wrapper autour des appels à send() et assertReply(). Il s’agit d’un modèle si courant qu’une assistance est fournie.

function test(userSays: string | Partial<Activity>, expected: string | Partial<Activity> | (activity: Partial<Activity>, description?: string) => void, description?: string, timeout?: number): TestFlow

Paramètres

userSays

string | Partial<Activity>

Texte ou activité simulant une entrée utilisateur.

expected

string | Partial<Activity> | (activity: Partial<Activity>, description?: string) => void

Texte ou activité attendu de la réponse envoyée par le bot.

description

string

(Facultatif) Description du cas de test. S’il n’est pas fourni, un sera généré.

timeout

number

(Facultatif) nombre de millisecondes à attendre pour obtenir une réponse du bot. Par défaut, la valeur est 3000.

Retours

Nouvel objet TestFlow qui ajoute cet échange à l’échange modélisé.

then(() => void, (err: any) => void)

Ajoute une then() étape à la chaîne de promesse de tests.

function then(onFulfilled?: () => void, onRejected?: (err: any) => void): TestFlow

Paramètres

onFulfilled

() => void

Code à exécuter si le test est actuellement réussi.

onRejected

(err: any) => void

Code à exécuter si le test a lève une erreur.

Retours

Nouvel objet TestFlow qui ajoute cet échange à l’échange modélisé.