A Model-based Testing Technique for Amazon Lex Task-based Chatbots
For developers of task-based chatbots, LexTester provides a more effective automated testing method than existing tools, addressing limitations in test scenario complexity and oracle weaknesses.
LexTester, a model-based testing technique for Amazon Lex chatbots, generates a Dialog Graph of all possible interactions and an executable test suite with coverage strategies. It outperformed Botium on five chatbots, achieving 83-95% coverage, nearly double test complexity, and up to 4x fault detection at comparable time costs.
Task-based chatbots are nowadays widely adopted software systems, usually integrated into real-world applications and communication channels, designed to assist users in completing tasks through conversational interfaces. Like any other software, even chatbots are prone to bugs. Despite their increasing pervasiveness in everyday activities, existing techniques for assessing their quality still exhibit several limitations, such as the simplicity of generated test scenarios and oracle weaknesses. In this paper, we present LexTester, an automated model-based testing technique for Amazon Lex chatbots. The technique explores the conversational space of the chatbot under test to generate a Dialog Graph of all possible interactions, from which an executable test suite is generated according to different coverage strategies. LexTester was evaluated against the state-of-the-practice chatbot testing tool Botium on five Amazon Lex chatbots, consistently outperforming it in all subjects, generating more tests with nearly double complexity, achieving overall 83-95% coverage of conversational elements, and improving fault detection effectiveness by up to four times at comparable time costs.