Тестування чат-бота (Chatbot)
Last updated
Last updated
Чат-бот – це програма, призначена для імітації спілкування з людиною. Розробники зазвичай проектують чат-ботів так, щоб користувачам було складно визначити, спілкуються вони з живою людиною або з роботом.
Чат-боти - це не що інше, як програми, які мають прикладний рівень, базу даних та API. Щоб спростити роботу чат-бота, ми можемо сказати, що він працює в порівнянні зі зразком для класифікації тексту та видачі відповіді на запитання/запити, задані користувачем. Чат-бот відповідає користувачеві згідно з закладеною в нього програмою. Чат-боти бувають різних типів залежно від того, як вони використовуються. Існує три основні типи чат-ботів:
Чат-бот з урахуванням правил (Rule-Based Chatbot): це базовий чат-бот, користувач взаємодіє з цим типом бота, використовуючи певні параметри. Щоб отримати відповіді від цих роботів, користувачам необхідно вибрати певні параметри. Такі роботи збирають запит користувача, аналізують його, а потім пропонують результати у вигляді кнопок. Ці боти зазвичай використовуються для заміни часто задаваних питань;
Незалежні (Keyword) чат-боти: це бот з машинним навчанням, на відміну від чат-ботів на основі правил, вони аналізують те, що хоче користувач, і реагують відповідним чином. Ці чат-боти використовують ключові слова та машинне навчання, що настроюються, щоб визначити, як ефективно і результативно реагувати на запити користувачів;
НЛП (Contextual) чат-боти: на даний момент це просунуті чат-боти. Вони є комбінацією кращих чат-ботів на основі правил і ключових слів. Ці чат-боти використовують , щоб зрозуміти контекст і наміри запитів користувачів та діяти відповідно. Ці чат-боти можуть легко обробляти кілька запитів від одного користувача.
Часті проблеми чат-ботів :
Зламані скрипти, що призводять до збоїв у роботі;
Довгі паузи перед відповідями;
Немає зв'язку з іншими бізнес-каналами;
Занадто багато намірів чи бізнес-завдань для одного бота;
Нестача мови та/або точності (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-спеціаліст не впевнений у своїх навичках коректора, доручіть це завдання іншому члену команди. Крім того, новий погляд завжди корисний. Отже, перевірте відповіді на орфографічні, лексичні та граматичні помилки, пунктуацію та зв'язність. Також переконайтеся, що форматування правильне. Щоразу, коли у вас є список речей, використовуйте маркери або цифри. Робіть пропозиції короткими та поділіть інформацію на абзаци, якщо повідомлення довге.
ПОРАДИ З ЯКОСТІ: Було б чудово, якби чат-бот розпізнавав часовий пояс користувача і відповідно привітав його. Щодо мови, то система повинна мати доступ до відповідних налаштувань пристрою або розпочати розмову, вказавши ці дані. Якщо важлива валюта та інші деталі локалізації, чат-бот також має вказувати їх за допомогою питань.
Джерела:
Дод. матеріал: