Chatbot Testing for every release is painful for any developer or testing team. With UiPath, you can automate the chatbot testing.

What it does

Simulates how UiPath can be used to automate chatbot testing. The design is an easy-customizable solution that interacts with the chatbots on different platforms, just like the humans do. The prototype demonstrates this by testing two chatbots across two different platforms depending on which one is enabled as a part of the Config; a Skype Chatbot named “Horoscope” as well as a OrderDrink chatbot on AWS Lex.

How I built it

Using UiPath Community Edition and skype.

Challenges I ran into

Selectors of skype web does not have a reliable tag element to be captured by uipath. Overcame the same by passing the current transaction number being processed.

Accomplishments that I'm proud of

To vision and end to end solution and prototype it with one of the most commonly used platforms (Skype) with customers and enterprises

What I learned

In some platforms like AWS, the intents, and the utterances configured can be exported. The file can then be parsed to generate a mapping that will be useful to troubleshoot.

What's next for UiPath Automated Chatbot Testing

There are five enhancements I can recommend:

  1. Extension to Other Platforms The concept can be extended to work with any chatbot platform: AWS, Facebook, Slack, etc. including any inhouse chatbots developed for your enterprise or for your customers

  2. Extension to Other Response Types The prototype only compares response text with expected text. However, the solution can be extended to compare chatbot responses that are buttons, images, files or any other response types

  3. Aid Troubleshooting and Analysis Chatbot response time can be additionally measured and baselined, automated performance testing can be executed during expected peak time or post heavy releases. If an extract is available that maps the responses to the intents configured in the chatbot, then the troubleshooting time taken by the developers to identify which intent was incorrectly picked up for failed cases can be eliminated. A dashboard can be created to analyze each performance (in terms of accuracy, response time, intents with most failed cases, most incorrectly picked intents, etc) as well as analze the trend of is performance over time as new features are added in subsequent releases.

  4. Scalability With orchestrator and multiple robot servers, the UiPath process can be configured -- to either simulate concurrent users testing a chatbot -- or to test multiple chatbots at once one on each server -- or test the same chatbot but with different utterances per robot server to lower the overall testing TAT.

  5. Complete the end to end chatbot testing with UiPath Robots for Knowledge Extraction Add provider robots that generates the utterances from either of these sources: -- Existing Chatbot configurations -- Conversation logs of the chatbot -- Email conversations with IT Team -- ITIL requests raised for IT Team

Built With

  • uipath
Share this project: