Challenges in testing ChatBots
This is the second article on ChatBot Testing. Here is the first article which introduces the chatbots in general and details out why should we test chatbots.
Chatbots are different to other applications in several ways as listed below which makes them challenging to test and measure the quality.
Chatbots are different to other applications in several ways as listed below which makes them challenging to test and measure the quality.
Self Learning Systems
Chatbots are built using AI and NLP services and keep
learning and improving on their own. This makes it highly unpredictable whether
a test case has failed due to the defect or if its improvement. One cannot have
the traditional style of testing and write test cases with expected output.
Remember, the test data used itself can be used by the bot to learn and update
its behaviour, the negative testing may have an impact on the bot !!
Non-linear input
Voice based chatbots use the speech recognition technologies to convert the voice to text. Chatbots are heavily dependent one such solutions. Along with the dependency comes testing the accent, type voices, speech clarity and speech with background noises(say a song playing in the background or a TV program running in the background J). How does the bot handle such complicated inputs.
Error handling
Ability to test and determine what is out of context and how should an unexpected user input should be handled. This would involve the domain knowledge and the context testing together. For example: Architecture in construction based business would mean different than an IT business.
Endless conversational patterns
Due to the nature of human language it is impossible for
software tests to cover all possible situations. This may include the native jargons used, spelling mistakes, out of
context to what bot is designed for and switching between the contexts in the
conversations.
Comments
Post a Comment