Тестирование чат-бота (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