Тестирование чат-бота (Chatbot)
Чат-бот - это программа, предназначенная для имитации общения с человеком. Разработчики обычно проектируют чат-ботов так, чтобы пользователям было сложно определить, общаются ли они с живым человеком или с роботом.
Чат-боты - это не что иное, как приложения, которые имеют прикладной уровень, базу данных и API. Чтобы упростить работу чат-бота, мы можем сказать, что он работает на сопоставлении с образцом для классификации текста и выдачи подходящего ответа на вопросы/запросы, заданные пользователем. Чат-бот отвечает пользователю согласно заложенной в него программе. Чат-боты бывают разных типов, в зависимости от того, как они используются. Существует три основных типа чат-ботов:
Чат-бот на основе правил (Rule-Based Chatbot): это базовый чат-бот, пользователь взаимодействует с этим типом бота, используя предопределенные параметры. Чтобы получить ответы от этих ботов, пользователям необходимо выбрать определенные параметры. Такие боты собирают запрос пользователя, анализируют его, а затем предлагают результаты в виде кнопок. Эти боты обычно используются для замены часто задаваемых вопросов;
Независимые (Keyword) чат-боты: это боты с машинным обучением, в отличие от чат-ботов на основе правил, они анализируют то, что хочет пользователь, и реагируют соответствующим образом. Эти чат-боты используют настраиваемые ключевые слова и машинное обучение, чтобы определить, как эффективно и результативно реагировать на запросы пользователей;
НЛП (Contextual) чат-боты: на данный момент это самые продвинутые чат-боты. Они представляют собой комбинацию лучших чат-ботов на основе правил и ключевых слов. Эти чат-боты используют NLP, чтобы понять контекст и намерения запросов пользователей и действовать соответственно. Эти чат-боты могут легко обрабатывать несколько запросов от одного и того же пользователя.
Частые проблемы чат-ботов:
Сломанные скрипты, которые приводят к сбоям в работе;
Долгие паузы перед ответами;
Нет связи с другими бизнес-каналами;
Слишком много намерений или бизнес-задач для одного бота;
Недостаток речи и/или точности (Lack of utterance and/or accuracy);
Нет права на ошибку;
Плохая навигация;
Плохой дизайн разговора.
Виды тестирования чат-ботов
1. Functional Testing
Чат-бот может быть эффективным только в том случае, если он понимает контекст, в котором работает. Чтобы это произошло, разработчикам необходимо «научить» приложение различным категориям слов и конкретным терминам. Допустим, у нас есть чат-бот для кофейни, который позволяет пользователям размещать заказы. Вы можете перечислить варианты и сделать их кликабельными или научить бота распознавать заказы. В первом случае разработчикам может быть проще программировать функционал, но это может быть менее удобно для пользователей. Взгляните на пример такого потока:
Этот поток может варьироваться, и вам может потребоваться добавить другие этапы - горячий, холодный и ледяной; с чаем, алкоголем или ароматизатором; и так далее. Логика будет усложняться, когда вы добавите возможность заказать кофе в зернах, десерты или другие продукты, которые покупатель обычно может найти в кофейне.
Другой сценарий более сложен. Он обрабатывает прямые запросы пользователей и извлекает необходимую информацию. Например, пользователь видит «Привет! Что бы вы хотели заказать?" сообщение и набирает ответ. Пусть это будет «Капучино с одним сахаром и холодный напиток без сахара для Бена». Здесь есть несколько сущностей, которые чат-бот должен понимать:
Тип кофе - капучино, колд брю;
Варианты сахара - да, нет;
Количество сахаров - один, ноль;
Имя заказчика - Бен.
Разработчики вставляют эти данные на ранних этапах и строят на их основе логику чат-бота. Чтение и извлечение информации функционирующим ботом также называется заполнением слотов (slot filling).
ТЕСТИРОВАНИЕ: Чтобы узнать, знаком ли бот с основными сущностями, инженеру по контролю качества необходимо будет выполнить тесты, специфичные для предметной области. Важно убедиться, что чат-бот понимает все термины, связанные с кофе, которые могут использовать клиенты.
СОВЕТЫ ПО КАЧЕСТВУ: Убедитесь, что вы добавили достаточное количество объектов и значений для каждого, чтобы чат-бот мог правильно понять запрос. В идеальном случае вам нужно будет охватить оба сценария - один для тех, кто уже знает, и один для тех, кто выбирает, что заказать.
2. Валидация входных данных (Validating Inputs - Some More Functional Testing)
Если чат-бот принимает такие входные данные, как адреса электронной почты, номера телефонов и почтовые индексы, для системы очень важно распознать правильный формат данных.
ТЕСТИРОВАНИЕ: Скармливайте чат-боту адреса электронной почты, номера телефонов и почтовые индексы в разных неправильных форматах, например:
адрес электронной почты без символа @;
адрес электронной почты с пробелами;
неправильное количество цифр в почтовом индексе;
буквы в номере мобильного телефона.
Таким образом, вы узнаете, как система принимает неверные данные, и предложите улучшения, если ответ не удобен для пользователя.
СОВЕТЫ ПО КАЧЕСТВУ: Проверка данных должна быть немедленной и сопровождаться соответствующим сообщением. Сообщение может показывать пример правильного адреса электронной почты, номера мобильного телефона и т. д. или просто уведомлять об ошибке. Если ввод действителен, пользователь должен увидеть «сообщение об успехе» - доказательство того, что система получила ваши данные и распознала их как действительные.
3. Негативные входные данные (Unknown Inputs - Error Handling & Limit Value Testing)
Команда не может предусмотреть все возможные пользовательские вводы, особенно если есть вариант ввода, позволяющий ввести запрос. Поэтому необходимо исследовать границы запрограммированной логики. Другая задача - убедиться, что бот адекватно реагирует на входные данные, которые он не понимает.
ТЕСТИРОВАНИЕ: Запустите исследовательские тесты, чтобы узнать, как чат-бот обрабатывает нестандартные входные данные. Они могут включать:
Случайные разговоры, не связанные с целью чат-бота;
Бессмысленные предложения или выражения, которые обычно не используются;
Грамматические ошибки, опечатки, сленг, разные варианты английского языка;
Сбивающие с толку и оскорбительные сообщения.
СОВЕТЫ ПО КАЧЕСТВУ: Креативность клиентов не имеет границ, особенно когда они хотят поиграть с чат-ботом. Вы не можете охватить все возможные сценарии и сообщения. Есть несколько вещей, которые нужно сделать:
Добавьте варианты общих ключевых слов с опечатками в жаргон чат-бота. Если бот не может понять небольшие изменения запроса, разработчикам нужно научить его это делать;
Работайте над светской беседой, чтобы поддержать основную непринужденную беседу. Это придаст человечности, сделает разговор непринужденным и веселым. Эти запросы привлекают внимание пользователей и оказывают положительное влияние на пользовательский опыт;
Придумывайте ответы на оскорбительные сценарии. Вам нужно будет создать несколько дополнительных слотов для ненормативной лексики, чтобы чат-бот мог дать остроумный ответ. Напишите экстренный ответ на несоответствующие запросы. Хотя приведенные выше пункты являются скорее рекомендациями, этот является обязательным. Вы можете использовать ответ «Извините, я не понял» для любого запроса, который не полностью соответствует логике;
Избегайте бесконечных циклов. Когда чат-бот не получает соответствующий запрос или ответ на вопрос, он должен попросить уточнить запрос или предложить дополнительные варианты. Убедитесь, что разговор завершен, и программа не показывает один и тот же ответ вечно. Вместо этого запрограммируйте чат-бота на завершение разговора или подключите человека-эксперта после трех или пяти запросов «Я не понял» подряд.
Чат-бот - это бизнес-инструмент, а не игрушка, которую пользователи могут тестировать на наличие умных ответов. И тем не менее особенности гуманизации положительно сказываются на имидже бренда и пользовательском опыте. Однако когда дело доходит до ругательств, было бы разумно не отставать от тона голоса бренда. Пошутите и ответьте на оскорбительные вопросы, если можете. В противном случае просто выходите стратегически. Единственное, что является общим вне зависимости от стратегии общения, - это никогда не ругаться матом. Это не очень вежливо.
4. UI Testing
Чат-боты часто показывают кнопки с вариантами ответа, предоставляют ссылки на веб-сайт бренда или другие ресурсы, имеют карточки со встроенной информацией или другими изображениями. Все эти элементы должны быть функциональными - ссылки ведут на правильные источники, изображения оптимизированы и правильно отображаются, все цепочки ответов связаны так, чтобы разговор не прерывался резко.
ТЕСТИРОВАНИЕ: Необходимо проверять весь поток на наличие битых ссылок, графических элементов и пробелов в логике.
СОВЕТЫ ПО КАЧЕСТВУ: Предоставьте пользователям возможность оставлять отзывы. Таким образом, они сообщат, если обнаружат какие-то дефекты, которые вы могли пропустить. 100% покрытие тестами - это миф, и оставить пару мелочей незамеченными - это нормально.
5. Compatibility Testing
Еще одна важная вещь - убедиться, что чат-бот корректно выглядит на разных устройствах. Интеграция бота в мессенджер - обычная практика, но это не единственный вариант. Хотя дизайн мессенджера уже настроен для различных устройств, подключение чат-бота к веб-сайту может быть не таким простым.
ТЕСТИРОВАНИЕ: Проверьте, как выглядит окно чат-бота на разных устройствах, в разных браузерах и версиях ОС. Измените размер окна браузера на экране компьютера, чтобы графика не искажалась, а макет не нарушался. Тексты должны оставаться читабельными и не выходить за границы.
СОВЕТЫ ПО КАЧЕСТВУ: Проверьте чат-бот на широко используемых устройствах, браузерах и версиях ОС перед выпуском. При необходимости настройте стиль и параметры окна чат-бота.
6. UX Testing
Это один из наиболее очевидных аспектов чат-бота для проверки. UX-тестирование будет основываться как на бизнес-требованиях, так и на личном опыте пользователей. Важно убедиться, что чат-бот выполняет свою основную задачу, генерируя правильные и точные ответы.
ТЕСТИРОВАНИЕ: На основе бизнес-требований создайте сценарии для пользовательских запросов. Основная идея - проверить эти запросы с точки зрения пользователя, который впервые видит вашего чат-бота. Итак, начните с ответов на следующие вопросы:
Понимает ли чат-бот вопросы?
Предоставляет ли он мгновенные ответы на эти запросы?
Является ли информация актуальной, точной и полезной для пользователя?
Требуется ли для завершения пути пользователя больше или меньше шагов?
Привлекательно ли это для пользователей?
Склонны ли они отказываться от чат-бота?
Как сделать беседу более увлекательной?
СОВЕТЫ ПО КАЧЕСТВУ: Главное правило - вести разговор как можно более нормально. Итак, вот несколько основных правил, которые помогут вам достичь этой цели:
Разговор с чат-ботом должен иметь логический ход, очень похожий на реальный разговор с человеком. Например, начните с приветствия, а затем задайте вопрос, чтобы начать разговор:
Могу я чем-нибудь помочь?
Что вы ищете?
Заинтересован ли ты в…?
Обратите внимание на варианты ввода. Если у вас есть текстовое поле, в котором пользователи могут вводить свои запросы, убедитесь, что чат-бот понимает разные запросы. Допустим, вы хотите заказать товар в канцелярском магазине. Существует несколько вариантов начала разговора:
Я хочу заказать блокнот.
Мне нужен блокнот.
Какие тетради у вас есть?
Можно мне лиловый блокнот с точками размером 5×3,5 дюйма?
Может быть разумно предоставить стандартный набор ответов, это зависит от цели вашего чат-бота и разнообразия доступных товаров/услуг.
Каждый ответ должен быть логически связан с предыдущим запросом или вопросом. Крайне важно, чтобы чат-бот предоставлял только актуальную и необходимую информацию. Мгновенно уведомляйте клиентов об ошибках в их запросах. Подтвердите сообщение об успешном завершении, если чат-бот запрашивает ввод контактных данных;
Всегда должно быть последнее сообщение, сигнализирующее об окончании разговора. Оно может содержать ссылки на некоторые полезные ресурсы, рекомендации по дальнейшему общению или прощальную фразу;
Рассмотрите возможность подключения пользователя к помощнику-человеку. Хотите вы того или нет, но есть вопросы, с которыми боты не справятся. И просто так предоставьте возможность вернуться к началу или вернуться к предыдущему шагу. Чат-бот требует четкой навигации, как и любой другой онлайн-сервис.
7. Performance Testing
Люди, использующие чат-боты, рассчитывают получить точные ответы на свои запросы и получить их мгновенно. Это означает, что тестирование производительности чат-бота необходимо. Следовательно, задержка - время, необходимое чат-боту для получения ответа и его отображения, - должна быть минимальной.
ТЕСТИРОВАНИЕ: QA-инженер должен проверять разные запросы, которые охватывают маленькие и большие диалоги и содержат разные типы контента. Чтобы каждый ответ появился на экране, должно пройти одинаковое время, независимо от его места в пути пользователя и избранного контента.
СОВЕТЫ ПО КАЧЕСТВУ: Задержка, которая длится более пары секунд, вызывает разочарование, и пользователь, скорее всего, откажется от чат-бота. Задержка может зависеть от содержания ответа, но рекомендуемое время ответа составляет до двух секунд.
8. Integration/API Testing
Как правило, чат-бот не работает сам по себе - он становится неотъемлемой частью цифровой экосистемы компании. То есть вам в конечном итоге нужно будет подключить его к официальному сайту, учетной записи в социальной сети, мессенджеру или другому приложению.
ТЕСТИРОВАНИЕ: Если вы используете программное обеспечение для создания ботов, вы, вероятно, найдете API, который позволяет подключать чат-бот к вашей системе и запускать тесты API. Если вы используете собственное решение, необходимо запустить интеграционные тесты, чтобы проверить, как бот и другие системные функции ведут себя при подключении.
СОВЕТЫ ПО КАЧЕСТВУ: Обратите внимание как на технические, так и на дизайнерские аспекты вашего чат-бота. Это часть вашей цифровой системы, и она должна легко интегрироваться. Все упомянутые выше аспекты функциональности и производительности должны соответствовать стандартам качества после подключения чат-бота к веб-сайту или другой платформе. Дизайн должен соответствовать другим медиа и имиджу бренда в целом. Последний аспект подпадает под UX-тестирование, но на этом этапе может стать очевидным несоответствие.
9. Localization Testing
И последнее, но не менее важное: избегайте ошибок в ответах - орфографических, грамматических, лексических, любых ошибок! В большинстве случаев они не будут иметь катастрофического эффекта, но внимательные пользователи могут скептически относиться к уровню предоставляемых вами услуг. Короче говоря, важны мелочи, поэтому тексты должны быть безошибочными. Если веб-сайт многоязычный, имеет смысл создать многоязычного чат-бота. Имейте в виду, что локализация охватывает и другие аспекты - часовые пояса, валюты, метрические системы и многое другое.
ТЕСТИРОВАНИЕ: Доверьте тестирование локализации тому, кто умеет редактировать тексты. Если QA-специалист не уверен в своих навыках корректора, поручите эту задачу другому члену команды. Кроме того, свежий взгляд всегда полезен. Итак, проверьте ответы на орфографические, лексические и грамматические ошибки, пунктуацию и связность. Также убедитесь, что форматирование правильное. Всякий раз, когда у вас есть список вещей, используйте маркеры или цифры. Делайте предложения короткими и делите информацию на абзацы, если сообщение длинное.
СОВЕТЫ ПО КАЧЕСТВУ: Было бы здорово, если бы чат-бот распознавал часовой пояс пользователя и соответственно приветствовал его. Что касается языка, то система должна иметь доступ к соответствующим настройкам устройства или начать разговор, указав эти данные. Если важна валюта и другие детали локализации, чат-бот также должен указывать их с помощью вопросов.
Источники:
Доп. материал:
Last updated