问题 1
在 Botium 中,有几个选项可以满足在断言聊天机器人响应时更加灵活的要求。
首先,您可以将匹配模式切换为不同的模式(请参阅Botium Wiki)- Botium 可以在几个选项之间切换文本断言的完成方式,您甚至可以在那里使用正则表达式。默认情况下这是wildcardIgnoreCase,这意味着您可以使用星号进行通配符匹配:
#me
Hi
#bot
Hello*
如果答案都或多或少相同,但有一些细微的偏差,则此方法有效。在 Botium 中执行此操作的推荐方法是使用话语列表:而不是拥有一个 convo 文件,而是将其拆分为一个 convo 文件和一个单独的 utterances 文件。在hello.convo.txt之前:
#me
Hi
#bot
Hello*
之后hello.convo.txt:
#me
Hi
#bot
UTT_HELLO
和UTT_HELLO.utterances.txt:
UTT_HELLO
Hello
Hello guy
hi dude
现在 Botium 允许这三个答案中的任何一个,只要这个话语列表是引用的。您可以在Botium in a nutshell系列中阅读更多相关信息。
问题2
Botium 可以处理按钮、选项列表、轮播卡片等(参见Botium Wiki),但连接器必须为此类内容做好准备。这取决于聊天机器人技术是否支持 - 请参阅官方 Botium 连接器列表。
在您的情况下,当您使用通用 HTTP/JSON 连接器时,您可以尝试SIMPLEREST_BUTTONS_JSONPATH功能,或者您可以添加自己的请求/响应挂钩作为 Javascript 代码 - 请参阅Botium Wiki