• Skip to primary navigation
  • Skip to main content
  • Skip to footer
Cyara

Cyara

Cyara Customer Experience Assurance Platform

  • Login
  • Contact Us
  • Request a demo
  • Login
  • Contact Us
  • Request a Demo
  • Why Cyara
    • AI-Led CX Assurance Platform
    • AI vision for CX
    • Cyara partner network
    • Cyara Academy
  • Solutions
    • Transform
          • TRANSFORM – Drive CX Change

          • Functional, regression, & objective testing | Cyara Velocity
          • Performance testing | Cyara Cruncher
          • See all use cases >
          • Cyara platform - Transform - Drive CX change
    • Monitor
          • MONITOR – Assure CX Journeys

          • CX monitoring | Cyara Pulse
          • Telecom assurance | Cyara Voice Assure
          • CX & telecom monitoring | Cyara Pulse 360
          • Call ID line assurance | Cyara Number Trust
          • Agent environment assurance | Cyara ResolveAX
          • See all use cases >
          • Cyara platform - Monitor - Assure CX journeys
    • Optimize
          • OPTIMIZE — Leverage AI for CX

          • Conversational AI optimization | Cyara Botium
          • Generative AI assurance | Cyara AI Trust
          • See all use cases >
          • Cyara platform - Optimize - Leverage AI for CX
    • Connect
          • CONNECT — Assure WebRTC CX

          • WebRTC optimization | Cyara testRTC
          • WebRTC monitoring | Cyara watchRTC
          • WebRTC quality assurance | Cyara qualityRTC
          • See all use cases >
          • Cyara platform - Connect - Assure WebRTC CX
  • Resources
    • CX Assurance blog
    • Customer success showcase
    • CX use cases
    • Events & upcoming webinars
    • On-demand webinars
    • Resource library
    • Customer community
  • About Us
        • About Cyara

        • About Cyara
        • Leadership
        • Careers
        • Legal statements, policies, & agreements
        • Services

        • Cyara Academy
        • Consulting services
        • Customer success services
        • Technical support
        • News

        • CEO’s desk
        • Press releases
        • Media coverage
        • Cyara awards
        • Partners

        • Partners

Blog / CX Assurance

June 28, 2020

Testing a Chatbot End-to-End with Perfecto and Botium

Florian Treml, Senior Director, Engineering

This article was originally published on Botium’s blog on June 28, 2020, prior to Cyara’s acquisition of Botium. Learn more about Cyara + Botium

This tutorial provides step-by-step instructions on how to set up Botium Box with Perfecto Mobile and Perfecto Web to run continuous End-To-End tests for a chatbot published on a website.

Test Levels

Due to the nature of conversational AI, it is vital to understand the concept of test levels to design efficient test strategies. This picture shows a typical chatbot architecture:

  • There is a user frontend hosted as a chat widget on a website
  • The frontend connects to a backend service (often called Orchestration Service) with web protocols — HTTP(S), JSON, Websockets
  • Somewhere behind, there is an NLP model to convert user input to structured data with intents and entities
  • An additional component is handling the dialogue sessions.
  • And finally, there are some kind of business services, often backed by business databases

Botium supports End-To-End-Testing with a Webdriver Connector, combining the power of Selenium’s web browser automation with Botiums chatbot testing superpowers. The chatbot is tested by doing, pointing, and clicking and typing on a website just as a real user would do. As part of a test strategy, there are several scenarios that can and should be covered with End-To-End-Testing:

  • Validating browser/client compatibility
  • Smoke Tests before going live

In this article, I will use one of the “Corona Bots” out there providing information about the Covid-19-Pandemic. It has a clean user interface with some quick responses, a text input field, and a chat history window.

Testing a Chatbot End-to-End with Perfecto and Botium - CoronaBot

 

Step 1: Connect Botium to the Perfecto Cloud

Follow the instructions in the Perfecto Documentation to connect Botium to the Perfecto Cloud.

Step 2: Choose Device or Browser Configurations

Follow the instructions in the Perfecto Documentation to register a set of devices or browser configurations you want to test with.

Step 3: Connect Botium to the Chatbot Website

Regardless of what channel the chatbot is published on, chances are high that Botium can connect to it – there are over 30 technologies supported right now, and the number is growing. In this case, we can select the WebdriverIO technology, and tell Botium the web address where the chatbot is published.

Note: this chatbot is using the Microsoft BotBuilder Webchat widget, which is natively supported by Botium. For other, custom widgets it is required to tell Botium the Selenium selectors of the input and output DOM elements.

Testing a Chatbot End-to-End with Perfecto and Botium - WebdriverIO

You can click the Say Hello button to check connectivity immediately – Botium uses an integrated headless chrome to launch the website, sends a simple Hello to the chatbot and waits for the response.

Testing a Chatbot End-to-End with Perfecto and Botium - WebdriverIO

Step 4: Define the Botium Test Cases

Test Cases in Botium are defined in a domain-specific scripting language called BotiumScript – plain text files holding the logic to send user input to the chatbot and what to expect as an outcome.

ask-for-corona-protection

#bot
Hallo, bitte stellen Sie mir eine Frage zum Corona-Virus und ich versuche sie zu beantworten!

#bot
Oft gestellte Fragen:
BUTTONS WOHER KOMMT DAS VIRUS?|WELCHE SYMPTOME GIBT ES?|WIE KANN MAN SICH SCHÜTZEN?

#me
WIE KANN MAN SICH SCHÜTZEN?

#bot
Um generell die Ausbreitung von Infektionskrankheiten der Atemwege zu vermeiden

This sample test case named ask-for-corona-protection will first wait for two greeting messages from the bot (also see the screenshot of the chat window above) – the second one should contain some clickable buttons – then send some text to the chatbot and wait for a response. There is also a test case designer in Botium Box for visualizing the conversation flow.

Testing a Chatbot End-to-End with Perfecto and Botium - Ask for Corona Protection

Several test cases are collected in a Test Set in Botium Box.

Step 5: Prepare Botium Test Project

The basic execution unit in Botium Box is called Test Project. It combines everything from the previous steps:

  • The chatbot channel to use
  • The test cases to run
  • The devices or browser configuration to launch the chatbot on

Open the Quickstart Wizard and follow the 3 steps.

Testing a Chatbot End-to-End with Perfecto and Botium - Quickstart First Step
Testing a Chatbot End-to-End with Perfecto and Botium - Quickstart Second Step
Testing a Chatbot End-to-End with Perfecto and Botium - Quickstart Last Step

On the final step, don’t click on Save and Start Testing, but on the Save button – there is one additional step to do before launching our first test session.

Step 6: Connect Botium to the Perfecto Test Reporting & Analytics Dashboard

Perfecto has a very powerful test reporting & analytics dashboard. We have to connect Botium  to this dashboard to keep Perfecto up to date about executed test cases and test results. Open the Settings tab in the Test Project, expand the Test Execution Settings and add PERFECTO-REPORTING to the Registered Components list.

Testing a Chatbot End-to-End with Perfecto and Botium - Settings

Step 7: Launch a Test Session

Now head over to the Test Project dashboard and click the Start Test Session Now! button. You can watch the test session while it is running.

Testing a Chatbot End-to-End with Perfecto and Botium - Testsession

Step 8: Inspect Results

When the test session is finished, you can start to inspect the results in Botium.

Testing a Chatbot End-to-End with Perfecto and Botium - Test Cases

For each test case, there is the full visualized conversation transcript shown, as well as a screenshot from the browser. When expanding a failing test case you can immediately see the reasons for failing (in this example, there is a problem with the German umlaut in Firefox on Windows).

Testing a Chatbot End-to-End with Perfecto and Botium - Assertion

Head over to the Perfecto Test Analysis Dashboard to have deeper insights into recent test sessions, device lists, and more.

Testing a Chatbot End-to-End with Perfecto and Botium - Latest Reports

You can follow the conversation flow of each test case and even watch the full-screen recording there in order to trace down any failures.

Testing a Chatbot End-to-End with Perfecto and Botium - Ask for Virus

 

Next Steps

There are so much more things to discover in Botium, this was just the beginning.

  • You can now setup your CI/CD pipeline for automated regression testing
  • You can start to explore other test levels such as NLP/NLU analytics with Botium Coach.
  • Or you can add performance testing and security testing to your pipeline as well

Read more about: Chatbots, Cyara Botium, Test Automation

Start the Conversation

Tell us what’s on your mind, and learn how Cyara’s AI-led CX transformation can help you delight your customers.

Contact Us

Related Posts

conversational AI testing

August 28, 2025

Automated Testing for Conversational AI: A Game-Changer in Customer Support

The rise of AI-powered CX offer many key benefits... and risks. Learn how to ensure CX quality with a conversational AI testing solution.

Topics: AI Chatbot Testing, Artificial Intelligence (AI), Automated Testing, Chatbots, Conversational AI, Conversational AI Testing, Customer Experience (CX)

chatbot testing services

June 19, 2025

9 Types of Chatbot Testing to Ensure Consistency, Accuracy, and Engagement

Deliver faster, more efficient, and reliable customer interactions by conducting these 9 types of chatbot testing.

Topics: AI Chatbot Testing, Automated Testing, Chatbot Assurance, Chatbot Testing, Chatbots

chatbot testing solution

May 8, 2025

Chatbot Testing Best Practices to Ensure Flawless Customer Support

As contact centers continue to innovate with AI-powered bots, follow these chatbot testing best practices to optimize your CX for success.

Topics: AI Chatbot Testing, Artificial Intelligence (AI), Chatbot Testing, Chatbots, Conversational AI, Customer Experience (CX)

Footer

  • AI-Led CX Assurance Platform
    • Cyara AI Trust
    • Cyara Botium
    • Cyara CentraCX
    • Cyara Cloud Migration Assurance
    • Cyara Cruncher
    • Cyara Number Trust
    • Cyara probeRTC
    • Cyara Pulse
    • Cyara Pulse 360
    • Cyara qualityRTC
    • Cyara ResolveAX
    • Cyara testingRTC
    • Cyara testRTC
    • Cyara upRTC
    • Cyara Velocity
    • Cyara Voice Assure
    • Cyara watchRTC
  • Use cases
    • Agent desktop testing
    • Cloud contact center monitoring
    • Contact center number test types
    • Contact center testing
    • Continuous testing
    • Conversational AI testing
    • CX monitoring
    • DevOps for CX
    • Email & SMS testing
    • Functional testing
    • Incident management
    • IVR discovery
    • IVR testing
    • Load & performance testing
    • Omnichannel testing
    • Outbound call testing
    • Regression testing
    • Voice biometrics testing
    • Voice of the customer
    • Voice quality testing
    • Web interaction testing
  • Resources
    • CX Assurance blog
    • Customer success showcase
    • Events & upcoming webinars
    • Resource library
    • On-demand webinars
    • Cyara portal & support site access
    • Customer community
  • About us
    • About Cyara
      • About us
      • Leadership
      • Careers
      • Cyara awards
      • Legal statements, policies, & agreements
    • Services
      • Cyara Academy
      • Consulting services
      • Customer success services
      • Technical support
    • News
      • CEO’s desk
      • Press releases
      • Media coverage
    • Partners
      • Partners
      • Integration & technology partners
      • Platform Integrations
  • LinkedIn
  • Twitter
  • YouTube

Copyright © 2006–2025 Cyara® Inc. The Cyara logo, names and marks associated with Cyara’s products and services are trademarks of Cyara. All rights reserved. Privacy Statement