带有多个botium.json的Eclipse中的botium项目不起作用

时间:2019-01-25 05:58:50

标签: automation chatbot

我已经按照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": "#"
    }
  }
}

在同一项目中,但使用

一次运行1
  

mocha --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)

1 个答案:

答案 0 :(得分:0)

“-convos”和“ --config”命令行参数实际上是用于Botium CLI的,而不是用于摩卡的。您可以将测试脚本切换到Botium CLI,或者以使用多个配置文件和多个convo目录的方式配置Botium。我的建议是将每个部分打包在一个单独的子目录中-这样您就拥有一个“ botium_dialog”目录和一个“ botium_watson”目录,每个目录都有其自己的package.json,botium.json,spec / convo文件夹等。

通过一些配置更改,也可以使用当前的文件夹结构。

  1. 在spec文件夹中添加多个botium.spec.js:

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 })
  1. 将多个测试脚本添加到package.json:

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"
}
...
  1. 运行两个测试脚本

例如:

npm run test_dialog
npm run test_watson