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")
对于通道 ID,如果不确定目标通道,请使用“仿真器”或“测试”。 否则,建议对机器人使用通道 ID 并为每个通道编写测试用例。 或者,可以使用测试适配器实例。 :type channel_or_adapter:Union[str, TestAdapter] :p aram target_dialog:要测试的对话。 这是测试客户端的根对话框。 :type target_dialog:对话框:p aram initial_dialog_options:(可选)其他参数(s)传递给正在启动的对话。 :type initial_dialog_options:对象: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)
参数
| 名称 | 说明 |
|---|---|
|
channel_or_adapter
必需
|
要用于测试的通道 ID 或测试适配器。 |
|
target_dialog
必需
|
|
|
initial_dialog_options
|
默认值: None
|
|
middlewares
|
默认值: None
|
|
conversation_state
|
默认值: None
|
方法
| get_next_reply |
获取等待传递的下一个答复(如果存在) |
| send_activity |
将活动发送到对话框中。 |
get_next_reply
获取等待传递的下一个答复(如果存在)
get_next_reply() -> Activity
返回
| 类型 | 说明 |
|---|---|
|
<xref:Activity>
|
可用于断言答复等的 TestFlow。 |
send_activity
将活动发送到对话框中。
async send_activity(activity) -> Activity
参数
| 名称 | 说明 |
|---|---|
|
activity
必需
|
可能包含文本的活动。 |
返回
| 类型 | 说明 |
|---|---|
|
<xref:Activity>
|
可用于断言答复等的 TestFlow。 |