TestFlow class

のサポート クラス TestAdapter を使用すると、一連のテストを簡単に構築できます。

注釈

または adapter.test() を呼び出adapter.send()すと、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());

プロパティ

previous

メソッド

assertNoReply(string, number)

ターン処理ロジックがボットから期待どおりに応答を生成しなかったというアサーションを生成します。

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

ボットの応答が予想されるテキスト/アクティビティと一致しない場合は、アサーションを生成します。

assertReplyOneOf(string[], string, number)

ボットの応答が候補文字列の 1 つでない場合は、アサーションを生成します。

catch((reason: any) => void)

テストの catch() promise チェーンに 句を追加します。

delay(number)

続行する前に遅延を挿入します。

finally(() => void)

finally 句を追加します。 後でチェーンを続けることはできません。

send(string | Partial<Activity>)

ボットに何かを送信します。

sendConversationUpdate()

会話更新アクティビティを作成し、アクティビティを処理します。

startTest()

テスト シーケンスを開始し、待機する約束を返します。

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

ボットに何かを送信し、指定された応答でボットが返される必要があります。 これは、 と assertReply()の呼び出しに関するsend()単なるラッパーです。 これは、ヘルパーが提供される一般的なパターンです。

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

テストの then() promise チェーンにステップを追加します。

プロパティの詳細

previous

previous: Promise<void>

プロパティ値

Promise<void>

メソッドの詳細

assertNoReply(string, number)

ターン処理ロジックがボットから期待どおりに応答を生成しなかったというアサーションを生成します。

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

パラメーター

description

string

(省略可能)テスト ケースの説明。 指定されていない場合は、生成されます。

timeout

number

(省略可能) ボットからの応答を待機するミリ秒数。 既定値は の 3000値です。

戻り値

この交換をモデル化された交換に追加する新しい TestFlow オブジェクト。

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

ボットの応答が予想されるテキスト/アクティビティと一致しない場合は、アサーションを生成します。

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

パラメーター

expected

string | Partial<Activity> | TestActivityInspector

ボットからのテキストまたはアクティビティが必要です。 カスタム ロジックを使用して応答を検査するコールバックを指定できます。

description

string

(省略可能)テスト ケースの説明。 指定されていない場合は、生成されます。

timeout

number

(省略可能) ボットからの応答を待機するミリ秒数。 既定値は の 3000値です。

戻り値

この交換をモデル化された交換に追加する新しい TestFlow オブジェクト。

assertReplyOneOf(string[], string, number)

ボットの応答が候補文字列の 1 つでない場合は、アサーションを生成します。

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

パラメーター

candidates

string[]

候補の回答の一覧。

description

string

(省略可能)テスト ケースの説明。 指定されていない場合は、生成されます。

timeout

number

(省略可能) ボットからの応答を待機するミリ秒数。 既定値は の 3000値です。

戻り値

この交換をモデル化された交換に追加する新しい TestFlow オブジェクト。

catch((reason: any) => void)

テストの catch() promise チェーンに 句を追加します。

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

パラメーター

onRejected

(reason: any) => void

テストでエラーがスローされた場合に実行するコード。

戻り値

この交換をモデル化された交換に追加する新しい TestFlow オブジェクト。

delay(number)

続行する前に遅延を挿入します。

function delay(ms: number): TestFlow

パラメーター

ms

number

ms to wait.

戻り値

この交換をモデル化された交換に追加する新しい TestFlow オブジェクト。

finally(() => void)

finally 句を追加します。 後でチェーンを続けることはできません。

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

パラメーター

onFinally

() => void

テスト チェーンの後に実行するコード。

戻り値

Promise<void>

非同期操作を表す promise。

send(string | Partial<Activity>)

ボットに何かを送信します。

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

パラメーター

userSays

string | Partial<Activity>

ユーザー入力をシミュレートするテキストまたはアクティビティ。

戻り値

この交換をモデル化された交換に追加する新しい TestFlow オブジェクト。

sendConversationUpdate()

会話更新アクティビティを作成し、アクティビティを処理します。

function sendConversationUpdate(): TestFlow

戻り値

新しい TestFlow オブジェクト。

startTest()

テスト シーケンスを開始し、待機する約束を返します。

function startTest(): Promise<void>

戻り値

Promise<void>

非同期操作を表す promise。

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

ボットに何かを送信し、指定された応答でボットが返される必要があります。 これは、 と assertReply()の呼び出しに関するsend()単なるラッパーです。 これは、ヘルパーが提供される一般的なパターンです。

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

パラメーター

userSays

string | Partial<Activity>

ユーザー入力をシミュレートするテキストまたはアクティビティ。

expected

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

ボットによって送信される応答のテキストまたはアクティビティが必要です。

description

string

(省略可能)テスト ケースの説明。 指定されていない場合は、生成されます。

timeout

number

(省略可能) ボットからの応答を待機するミリ秒数。 既定値は の 3000値です。

戻り値

この交換をモデル化された交換に追加する新しい TestFlow オブジェクト。

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

テストの then() promise チェーンにステップを追加します。

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

パラメーター

onFulfilled

() => void

テストが現在合格している場合に実行するコード。

onRejected

(err: any) => void

テストでエラーがスローされた場合に実行するコード。

戻り値

この交換をモデル化された交換に追加する新しい TestFlow オブジェクト。