我已经按照https://chatbotsmagazine.com/5-steps-automated-testing-of-chatbots-in-eclipse-ef4c3dcaf233中给出的说明设置了botium项目,并且可以对单个botium.json文件正常工作。
但是当我尝试同时设置多个连接器时, 1)botium_dialog.json
{
"botium": {
"Capabilities": {
"PROJECTNAME": "jokes",
"CONTAINERMODE": "dialogflow",
"DIALOGFLOW_PROJECT_ID": "###",
"DIALOGFLOW_CLIENT_EMAIL": "###",
"DIALOGFLOW_PRIVATE_KEY": "###",
"DIALOGFLOW_USE_INTENT": false
}
}
}
2)botium_watson.json
{
"botium": {
"Capabilities": {
"PROJECTNAME": "IBM Watson Conversation Sample",
"SCRIPTING_UTTEXPANSION_MODE": "all",
"SCRIPTING_FORMAT": "xlsx",
"SCRIPTING_XLSX_STARTROW": 2,
"SCRIPTING_XLSX_STARTCOL": 1,
"CONTAINERMODE": "watson",
"WATSON_USER": "#",
"WATSON_PASSWORD": "#",
"WATSON_WORKSPACE_ID": "#"
}
}
}
在同一项目中,但使用
一次运行1mocha --reporter mochawesome --reporter-options \“ reportDir = reportsDialog,reportFilename = index.html,code = false \” --convos ./spec/convo/dialog --config botium_dialog.json-退出规范“
出现错误
错误:功能“ CONTAINERMODE”丢失 在BotDriver._getContainer(node_modules \ botium-core \ src \ BotDriver.js:316:13) 在async.series(node_modules \ botium-core \ src \ BotDriver.js:154:30)
答案 0 :(得分:0)
“-convos”和“ --config”命令行参数实际上是用于Botium CLI的,而不是用于摩卡的。您可以将测试脚本切换到Botium CLI,或者以使用多个配置文件和多个convo目录的方式配置Botium。我的建议是将每个部分打包在一个单独的子目录中-这样您就拥有一个“ botium_dialog”目录和一个“ botium_watson”目录,每个目录都有其自己的package.json,botium.json,spec / convo文件夹等。
通过一些配置更改,也可以使用当前的文件夹结构。
botium_dialog.spec.js :
const BotiumBindings = require('botium-bindings')
const bb = new BotiumBindings({ convodirs: [ './spec/convo/dialog' ] })
BotiumBindings.helper.mocha().setupMochaTestSuite({ bb })
botium_watson.spec.js :
const BotiumBindings = require('botium-bindings')
const bb = new BotiumBindings({ convodirs: [ './spec/convo/watson' ] })
BotiumBindings.helper.mocha().setupMochaTestSuite({ bb })
package.json:
...
"scripts": {
"test_dialog": "BOTIUM_CONFIG=botium_dialog.json mocha --reporter spec --exit spec/botium_dialog.spec.js",
"test_watson": "BOTIUM_CONFIG=botium_watson.json mocha --reporter spec --exit spec/botium_watson.spec.js"
}
...
例如:
npm run test_dialog
npm run test_watson