Having created a slackbot with GCP, Alexa Skills, and Google Assistant Apps, it was time to look at Rasa and Botium.
Rasa and Botium are both Open-Source.
Rasa is a general chatbot framework, while Botium is a generic chatbot testing framework.
Both can be added into existing frameworks via webhooks.
The contents are as follows:
Rasa describes itself as "Built for developers, by developers".
One innovation of the Rasa Stack is that it depends upon an over-arching concept called a story:
http://rasa.com/docs/core/stories/
Other frameworks have roughly similiar approaches, but they are never as explicit.
Check out my Rasa testing with Docker.
Botium describes itself as "The Selenium for Chatbots".
It offers a number of integrations (which it refers to as "connectors"), both for testing Alexa Skills as well as Dialogflow apps.
For my slackbot I used Wit.ai - which is owned by Facebook.
For my Alexa Skills I used Alexa - which is owned by Amazon.
For my Google Assistant Apps I used Dialogflow - which is owned by Google.
While I have not personally used it, there is also LUIS - which is owned by Microsoft.
For anyone remotely concerned about privacy, being able to track user data and how it is processed via Open-Source code is definitely worth considering.
A selection of useful references follows.
For a good summary of "Why Rasa?" the following article is worth a read:
http://medium.com/rasa-blog/do-it-yourself-nlp-for-bot-developers-2e2da2817f3d
[The article also has some details on the underpinnings of Rasa.]
And the Rasa Blog version:
http://blog.rasa.com/do-it-yourself-nlp-for-bot-developers/
[The Medium.com version some interesting comments - which the Rasa Blog version does not.]
The documentation for Rasa may be found here:
http://rasa.com/docs/
The changelog for Rasa may be found here:
http://rasa.com/docs/rasa/changelog/
Some useful articles on Rasa and chatbots can be found on their blog:
http://blog.rasa.com
Some useful articles on Botium can be found on their blog:
http://www.botium.at/blog.html
The following article seems to give a good grounding on BDD with Cucumber & Gherkin:
http://www.sitepoint.com/bdd-javascript-cucumber-gherkin/
- Investigate Rasa
- More testing with Rasa
- Test Botium Connector for Alexa
- Test Botium Connector for Dialogflow
- Investigate Botium BDD Samples