我创建了一个HTTP(S(/JSON连接器来连接我的NLP聊天机器人。但是我在编写测试用例时遇到了一个问题。因为用户说一个问题可能有多种不同的回答。例如,我说";嗨"机器人可以对机器人说";你好~伙计"或";你好;。因此,测试结果将失败。这是一张测试结果图片。
我想也许我们可以用意向来判断这个问题,或者让Botium框通过添加";或";。
我的聊天机器人也可以响应表单,看起来像这样,我可以点击按钮。
所以,我有两个问题要问。
- 如何确定意图是否使用http(s(/json连接器
- 如何在Botium框上显示表单并确定聊天机器人按钮是否有效
我读过维基,但做得不好,非常感谢。
问题1
在Botium中,有几个选项可以满足在断言聊天机器人响应时更加灵活的要求。
首先,您可以将匹配模式切换到不同的模式(请参阅Botium Wiki(-Botium可以在几个选项之间切换文本断言的执行方式,甚至可以在那里使用正则表达式。默认情况下,这是通配符IgnoreCase,这意味着您可以使用星号进行通配符匹配:
#me
Hi
#bot
Hello*
如果答案或多或少都相同,但有一些微小的偏差,那么这个方法就有效了。在Botium中,建议使用话语列表:与其有一个卷积文件,不如将其拆分为一个卷积和一个单独的话语文件。在hello.convo.txt之前:
#me
Hi
#bot
Hello*
之后hello.convo.txt:
#me
Hi
#bot
UTT_HELLO
和UTT_HELLO.etterences.txt:
UTT_HELLO
Hello
Hello guy
hi dude
现在Botium允许这三个答案中的任何一个,只要这个话语列表是参考的。你可以在Botium简简单单系列中阅读更多关于它的内容。
问题2
Botium可以处理按钮、选项列表、转盘卡等(请参阅Botium Wiki(,但连接器必须为此类内容做好准备。这取决于聊天机器人技术是否支持-请参阅官方Botium连接器列表。
在您的情况下,当您使用通用HTTP/JONConnector时,您可以尝试SIMPLEREST_BUTTONS_JSONPATH功能,也可以将自己的请求/响应挂钩添加为Javascript代码-请参阅Botium Wiki