DialogTestClient 類別
用於隔離測試對話的用戶端。
建立 DialogTestClient 以測試對話,而不需要建立完整的配接器。
python client = DialogTestClient("test", MY_DIALOG, MY_OPTIONS) reply = await client.send_activity("first message") self.assertEqual(reply.text, "first reply", "reply failed")
針對通道標識碼,如果您不確定目標通道,請使用 「模擬器」或「測試」。 否則,建議您針對 Bot 所使用的通道標識碼,併為每個通道撰寫測試案例。 或者,可以使用測試配接器實例。 :type channel_or_adapter: Union[str, TestAdapter] :p aram target_dialog:要測試的對話框。 這會是測試用戶端的根對話方塊。 :type target_dialog:Dialog :p aram initial_dialog_options: (選擇性) 其他自變數,以傳遞至正在啟動的對話框。 :type initial_dialog_options: object :p aram 中間件:(選擇性) 要使用的測試配接器。 如果未提供此參數,測試用戶端會使用預設的TestAdapter。 :type 中間件:List[中間件] :p aram conversation_state: (選擇性) 在測試用戶端中使用的 ConversationState 實例。 :type conversation_state:ConversationState
建構函式
DialogTestClient(channel_or_adapter: str | TestAdapter, target_dialog: Dialog, initial_dialog_options: object = None, middlewares: List[Middleware] = None, conversation_state: ConversationState = None)
參數
| 名稱 | Description |
|---|---|
|
channel_or_adapter
必要
|
要用於測試的通道標識碼或測試配接器。 |
|
target_dialog
必要
|
|
|
initial_dialog_options
|
預設值: None
|
|
middlewares
|
預設值: None
|
|
conversation_state
|
預設值: None
|
方法
| get_next_reply |
取得等待傳遞的下一個回覆(如果有的話) |
| send_activity |
將活動傳送至對話框。 |
get_next_reply
取得等待傳遞的下一個回覆(如果有的話)
get_next_reply() -> Activity
傳回
| 類型 | Description |
|---|---|
|
<xref:Activity>
|
可用來判斷提示回復等的TestFlow。 |
send_activity
將活動傳送至對話框。
async send_activity(activity) -> Activity
參數
| 名稱 | Description |
|---|---|
|
activity
必要
|
可能含有文字的活動。 |
傳回
| 類型 | Description |
|---|---|
|
<xref:Activity>
|
可用來判斷提示回復等的TestFlow。 |