Поделиться через


TestFlow class

Класс поддержки для TestAdapter, который позволяет создать простую последовательность тестов.

Комментарии

Вызов adapter.send() или adapter.test() создаст новый поток тестирования, который можно объединить в цепочку дополнительных тестов с помощью синтаксического синтаксиса.

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)

Создает утверждение, если ответ ботов не является одной из строк кандидата.

catch((reason: any) => void)

Добавляет предложение catch() в цепочку обещаний тестов.

delay(number)

Вставляет задержку перед продолжением.

finally(() => void)

Добавляет предложение, наконец, Обратите внимание, что вы не можете продолжать цепочку после этого.

send(string | Partial<Activity>)

Отправляет что-то боту.

sendConversationUpdate()

Создает действие обновления беседы и обрабатывает действие.

startTest()

Запустите последовательность тестов, возвращая обещание ожидать.

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

Отправьте что-то боту и ожидает, что бот возвращается с заданным ответом. Это просто оболочка для вызовов send() и assertReply(). Это такой распространенный шаблон, который предоставляется вспомогательным.

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

Добавляет then() шаг в цепочку обещаний тестов.

Сведения о свойстве

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)

Создает утверждение, если ответ ботов не является одной из строк кандидата.

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

Параметры

candidates

string[]

Список ответов кандидата.

description

string

(Необязательно) Описание тестового случая. Если он не указан, будет создан.

timeout

number

(Необязательно) число миллисекунда, чтобы ждать ответа от бота. По умолчанию используется значение 3000.

Возвращаемое значение

Новый объект TestFlow, который добавляет этот обмен к моделиируемой обмену.

catch((reason: any) => void)

Добавляет предложение catch() в цепочку обещаний тестов.

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)

Добавляет предложение, наконец, Обратите внимание, что вы не можете продолжать цепочку после этого.

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

Параметры

onFinally

() => void

Код для запуска после цепочки тестов.

Возвращаемое значение

Promise<void>

Обещание, представляющее асинхронную операцию.

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>

Обещание, представляющее асинхронную операцию.

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

Отправьте что-то боту и ожидает, что бот возвращается с заданным ответом. Это просто оболочка для вызовов send() и assertReply(). Это такой распространенный шаблон, который предоставляется вспомогательным.

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() шаг в цепочку обещаний тестов.

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

Параметры

onFulfilled

() => void

Код для запуска, если тест в настоящее время передается.

onRejected

(err: any) => void

Код для запуска, если тест создал ошибку.

Возвращаемое значение

Новый объект TestFlow, который добавляет этот обмен к моделиируемой обмену.