TestFlow class

Kelas dukungan untuk TestAdapter yang memungkinkan konstruksi sederhana dari urutan pengujian.

Keterangan

Memanggil adapter.send() atau adapter.test() akan membuat alur pengujian baru yang dapat Anda rantai bersama pengujian tambahan menggunakan sintaks yang fasih.

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());

Properti

previous

Metode

assertNoReply(string, number)

Menghasilkan pernyataan bahwa logika pemrosesan giliran tidak menghasilkan balasan dari bot, seperti yang diharapkan.

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

Menghasilkan pernyataan jika respons bot tidak cocok dengan teks/aktivitas yang diharapkan.

assertReplyOneOf(string[], string, number)

Menghasilkan pernyataan jika respons bot bukan salah satu string kandidat.

catch((reason: any) => void)

Menambahkan klausul catch() ke rantai janji pengujian.

delay(number)

Menyisipkan penundaan sebelum melanjutkan.

finally(() => void)

Menambahkan klausa akhirnya. Perhatikan bahwa Anda tidak dapat terus menautkan setelahnya.

send(string | Partial<Activity>)

Mengirim sesuatu ke bot.

sendConversationUpdate()

Membuat aktivitas pembaruan percakapan dan memproses aktivitas.

startTest()

Mulai urutan pengujian, mengembalikan janji untuk ditunggu.

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

Kirim sesuatu ke bot dan mengharapkan bot untuk kembali dengan balasan tertentu. Ini hanyalah pembungkus panggilan ke send() dan assertReply(). Ini adalah pola umum sehingga pembantu disediakan.

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

Menambahkan langkah then() ke rantai janji pengujian.

Detail Properti

previous

previous: Promise<void>

Nilai Properti

Promise<void>

Detail Metode

assertNoReply(string, number)

Menghasilkan pernyataan bahwa logika pemrosesan giliran tidak menghasilkan balasan dari bot, seperti yang diharapkan.

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

Parameter

description

string

(Opsional) Deskripsi kasus pengujian. Jika tidak disediakan, satu akan dihasilkan.

timeout

number

(Opsional) jumlah milidetik untuk menunggu respons dari bot. Default ke nilai 3000.

Mengembalikan

Objek TestFlow baru yang menambahkan pertukaran ini ke pertukaran yang dimodelkan.

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

Menghasilkan pernyataan jika respons bot tidak cocok dengan teks/aktivitas yang diharapkan.

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

Parameter

expected

string | Partial<Activity> | TestActivityInspector

Teks atau aktivitas yang diharapkan dari bot. Dapat berupa panggilan balik untuk memeriksa respons menggunakan logika kustom.

description

string

(Opsional) Deskripsi kasus pengujian. Jika tidak disediakan, satu akan dihasilkan.

timeout

number

(Opsional) jumlah milidetik untuk menunggu respons dari bot. Default ke nilai 3000.

Mengembalikan

Objek TestFlow baru yang menambahkan pertukaran ini ke pertukaran yang dimodelkan.

assertReplyOneOf(string[], string, number)

Menghasilkan pernyataan jika respons bot bukan salah satu string kandidat.

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

Parameter

candidates

string[]

Daftar respons kandidat.

description

string

(Opsional) Deskripsi kasus pengujian. Jika tidak disediakan, satu akan dihasilkan.

timeout

number

(Opsional) jumlah milidetik untuk menunggu respons dari bot. Default ke nilai 3000.

Mengembalikan

Objek TestFlow baru yang menambahkan pertukaran ini ke pertukaran yang dimodelkan.

catch((reason: any) => void)

Menambahkan klausul catch() ke rantai janji pengujian.

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

Parameter

onRejected

(reason: any) => void

Kode untuk dijalankan jika pengujian telah melemparkan kesalahan.

Mengembalikan

Objek TestFlow baru yang menambahkan pertukaran ini ke pertukaran yang dimodelkan.

delay(number)

Menyisipkan penundaan sebelum melanjutkan.

function delay(ms: number): TestFlow

Parameter

ms

number

ms untuk menunggu.

Mengembalikan

Objek TestFlow baru yang menambahkan pertukaran ini ke pertukaran yang dimodelkan.

finally(() => void)

Menambahkan klausa akhirnya. Perhatikan bahwa Anda tidak dapat terus menautkan setelahnya.

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

Parameter

onFinally

() => void

Kode untuk dijalankan setelah rantai pengujian.

Mengembalikan

Promise<void>

Janji yang mewakili operasi asinkron.

send(string | Partial<Activity>)

Mengirim sesuatu ke bot.

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

Parameter

userSays

string | Partial<Activity>

Teks atau aktivitas yang mensimulasikan input pengguna.

Mengembalikan

Objek TestFlow baru yang menambahkan pertukaran ini ke pertukaran yang dimodelkan.

sendConversationUpdate()

Membuat aktivitas pembaruan percakapan dan memproses aktivitas.

function sendConversationUpdate(): TestFlow

Mengembalikan

Objek TestFlow baru.

startTest()

Mulai urutan pengujian, mengembalikan janji untuk ditunggu.

function startTest(): Promise<void>

Mengembalikan

Promise<void>

Janji yang mewakili operasi asinkron.

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

Kirim sesuatu ke bot dan mengharapkan bot untuk kembali dengan balasan tertentu. Ini hanyalah pembungkus panggilan ke send() dan assertReply(). Ini adalah pola umum sehingga pembantu disediakan.

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

Parameter

userSays

string | Partial<Activity>

Teks atau aktivitas yang mensimulasikan input pengguna.

expected

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

Teks atau aktivitas yang diharapkan dari balasan yang dikirim oleh bot.

description

string

(Opsional) Deskripsi kasus pengujian. Jika tidak disediakan, satu akan dihasilkan.

timeout

number

(Opsional) jumlah milidetik untuk menunggu respons dari bot. Default ke nilai 3000.

Mengembalikan

Objek TestFlow baru yang menambahkan pertukaran ini ke pertukaran yang dimodelkan.

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

Menambahkan langkah then() ke rantai janji pengujian.

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

Parameter

onFulfilled

() => void

Kode untuk dijalankan jika pengujian saat ini lolos.

onRejected

(err: any) => void

Kode untuk dijalankan jika pengujian telah melemparkan kesalahan.

Mengembalikan

Objek TestFlow baru yang menambahkan pertukaran ini ke pertukaran yang dimodelkan.