What is Botium

  1. Selenium is the de-facto-standard for testing web applications.

  2. Appium is the de-facto-standard for testing smartphone applications.

  3. Botium is for testing conversational AI.

Botium is free and Open Source, and available on Github.

Who should use Botium ?

Botium supports chatbot makers in training and quality assurance:

  • Chatbot makers define what the chatbot is supposed to do

  • Botium ensures that the chatbot does what it is supposed to do

Here is the “Hello, World!” of Botium:

TC01_HELLO

#me
hello bot!

#bot
Hello, meat bag! How can I help you ?

The test case is named TC01_HELLO, and the chatbot is supposed to respond to a user greeting.

To name just a few features of Botium:

  • Testing conversation flow of a chatbot

    • Capture and Replay

    • Integrated speech processing for testing voice apps

  • Testing NLP model of a chatbot

    • Domain specific and generic datasets included

    • Paraphrasing to enhance test coverage

  • E2E testing of a chatbot based on Selenium and Appium

  • Non-functional testing of a chatbot

    • Load- and Stress testing

    • Security testing

    • GDPR testing

  • CI/CD integration with all common products in that space (Jenkins, Bamboo, Azure DevOps Pipelines, IBM Toolchain, …)

  • and many more

../_images/botium_cycle.png

Understanding the Botium Stack

When we talk about Botium, we usually mean the whole Botium Stack of components. It is built on several components:

../_images/botium_stack.png

Botium Core, the heart and brain of Botium

All of the components in the Botium Stack build on top of Botium Core (except Botium Core itself, naturally), the heart and brain of Botium. Just as the heart and brain in your body are vital parts with very low chances to ever see or touch them, you most likely won’t ever get in touch with Botium Core directly: it’s the fuel, the nuts and bolts, the core technology, the heart and brain of Botium.

Botium CLI, the swiss army knife of Botium

The Botium CLI is a command line tool to actually use everything Botium Core is capable to do. If Botium Core is the heart and brain of Botium, then the Botium CLI stands for the extremities, the hands and feets of Botium (this was the last anatomic analogy in this article). It is a command line tool, which means it doesn’t provide a graphical user interface with buttons, pictures and hyperlinks. While graphical user interfaces are nice for first time usage, they are a big impediment in process and test automation. That’s why we built the Botium CLI.

Botium Bindings, the glue to bind Botium to test runners

A “test runner” is a piece of software which automatically runs thousands of test cases and outputs a nicely formatted summary about successful and failed test cases at the end. There are several test runners available you can choose from (Mocha, Jasmine, Jest, …) and Botium Bindings make them run the Botium test cases.

Botium Crawler, like a website crawler

The Botium Crawler is doing the work of detecting the conversation flows supported by your chatbot by itself. It does so by analyzing the quick responses offered by your chatbot and simulating clicks on all of the options in parallel, following all pathes down until it reaches the end of the conversation.

All detected conversation flows along all pathes are saved as Botium test cases and utterance lists and can be used as base for a regression test set.

Botium Box, the management and reporting platform of Botium

Botium Box is the pretty face of Botium : A modern, responsive, easy-as-hell web-based graphical user interface to configure, control and monitor every aspect of Botium Core.

Botium Platform: Everything you need to run Botium in the Enterprise

Botium Platform extends the open source Botium Stack libraries with enterprise features (relational database support, multiple deployment options, monitoring, build pipeline integration, load balancing and more) and includes enterprise-grade support. While the Botium Stack libraries are open source and free (“free” as in “freedom” as well as in “free beer”), the Botium Platform is an SaaS offer.

How do I get it ?

Here you can find installation instructions:

How do I get help ?

Enterprise Support

For enterprise agreements, please contact us on our website.