Упс! Не вдала спроба:(
Будь ласка, спробуйте ще раз.

Яку частину своєї роботи віддати штучному інтелекту, щоб швидше тестувати?

Oleksandr Sydorenko
Oleksandr Sydorenko QA Lead in Kiss My Apps
30 липня 2024 11 хвилин читання

Уявімо компанію, яка розробляє велику систему управління клієнтами для підприємств. Її розробники працюють над вдосконаленням та тестуванням нової версії програми, і компанія прагне оптимізувати свій робочий процес, використовуючи штучний інтелект для покращення швидкості, точності та ефективності тестування. То що ж вони можуть віддати на тестування ШІ?

Мене звати Олександр Сидоренко, я QA Lead у стартап-студії Kiss My Apps (входить до Netpeak Group), що займається розробленням mobile first продуктів. Маю більш ніж 4 роки досвіду в тестуванні. Й у цій статті разом зі своєю колегою Владиленою Лєбєдєвою розповідаємо та показуємо на власному прикладі, яку частину своєї роботи можна віддати штучному інтелекту, щоб швидше тестувати.

Автоматизація тестування функціональності програми

Однією з частин робочого процесу, яку можна доручити ШІ, є автоматизоване тестування функціональності програми. Наприклад, можна створити набір тестових сценаріїв для перевірки різних функцій, таких як додавання нового клієнта до системи, редагування даних або генерація звітів. ШІ може автоматично виконувати ці сценарії на різних конфігураціях та платформах, що значно збільшить швидкість та точність тестування.

Codeless automation — це не новинка у світі тестування і розробки. Ідея створення автотестів без необхідності вивчати, як писати код, була завжди актуальною, але ШІ підняв це на новий рівень. До прикладу, для того щоб створити тест в Applitools достатньо лише надати URL та описати англійською мовою кроки, які необхідно зробити, і ШІ перетворить це на скрипт. Applitools може самостійно аналізувати UI й виявляти баги шляхом порівняння зовнішнього вигляду веб- або мобільних програм із базовим зображенням. ШІ вміє розрізняти, які помилки критичні, а які прийнятні, можна ще й додатково визначити, які зони UI є найбільш критичними для пошуку багів, а які можна ігнорувати. Applitools може бути використаний для кросс-браузерного тестування, тестування локалізації, accessibility тестування та вагомо спростити створення UI тестів, що загалом прискорить регресію та звільнить QA команду від рутинної роботи.

Тестування масштабованості системи

Інша частина робочого процесу, яку можете доручити ШІ, це тестування масштабованості системи. Компанія може створити сценарії, які моделюють різні навантаження на систему, від невеликих до великих обсягів даних та транзакцій. ШІ може виконувати ці сценарії та аналізувати реакцію системи, що дозволить виявити можливі проблеми з продуктивністю та масштабуванням.

Штучний інтелект може і самостійно створювати сценарії та тести для оцінки продуктивності системи, для цього може бути використаний і Chat GPT, але зараз існують і цікавіші кейси.

Задоволення користувача продуктом напряму залежить від нефункціональних особливостей, і всі ми знаємо, що великий відсоток користувачів перестає користуватися застосунком, якщо під час використання стикається з великим часом очікування обробки запиту чи збоєм у роботі. Попри це, тестування продуктивності не є постійною практикою під час розробки мобільних застосунків, але Digital.ai має на меті змінити це. 

Тут ШІ може не тільки створювати скрипти для оцінки продуктивності застосунку, а й виконувати її одночасно з функціональним тестуванням. Це пришвидшує процес перевірки та дає змогу виміряти час переходу між сторінками, визначити будь-які стрибки споживання CPU, пам’яті та батареї, а також виявити непотрібні мережеві виклики. Digital.ai може запускати перевірки продуктивності мобільного застосунку на різних версій ОС та різних видах девайсів з наданням звіту, що перетворить роботу тестувальників з пошуку голки в копиці сіна на дослідження конкретних моделей пристроїв і версії ОС на наявність потенційних вузьких місць. Це допоможе вивільнити більше часу для визначення областей покращення мобільного застосунку, що тестується.

Тестування безпеки програмного забезпечення

Крім того, ШІ може бути використаний для тестування безпеки програмного забезпечення. Алгоритми машинного навчання можуть аналізувати код програми та виявляти потенційні вразливості, такі як SQL-ін’єкції, переповнення буфера чи недоліки в захисті даних. Це допоможе виявити та виправити проблеми безпеки ще до випуску програми в продукцію. Наприклад, Checkmarx інтегрували ШІ для сканування вихідного коду на предмет виявлення вразливостей, використовуючи алгоритми машинного навчання для покращення точності виявлення.

Також доцільно використовувати ШІ для генерації шкідливих скриптів, які будуть використані під час тестування на проникнення. Алгоритми аналізують великі обсяги даних про відомі атаки, включно з типами вразливості, методом експлуатації та використаними шкідливими скриптами під час атаки. На основі цього генеруються нові скрипти для імітації потенційної атаки, що робить тестування на проникнення більш ефективним.

Написання і підтримання тестової документації

Загалом для тестувальників тут можуть бути два основні виклики: документації або неповна і її не вистачає для повного розуміння роботи системи, або її так багато, що неможливо знайти те, що потрібно, та ще й половина в неактуальному стані. І в обох випадках на допомогу може прийти ШІ, щоб звільнити тестувальників від рутинної роботи. 

Chat GPT можна використовувати для генерації тест кейсів на основу вимог для полегшення підтримування документації в актуальному стані та підвищення тестового покриття, для аналізу вже наявної документації на присутність неоднозначностей або прогалин. Це все може робити й Notion AI, разом з поліпшенням навігації у великій кількості файлів. Більше не треба перечитувати багато документів, щоб знайти потрібну інформацію, чи відволікати колег, бо тепер можна просто віддати це завдання ШІ, який знайде потрібну інформацію в межах вашого воркспейсу, а заразом надасть посилання на потрібну сторінку, стислий переказ вмісту чи перепише текст більш зрозуміло.

Підписуйтеся на наші соцмережі

Більше про використання Notion AI можна дізнатись за посиланням.

Яку частину роботи ми віддаємо ШІ на прикладі використання ChatGPT та Notion AI?

Використання ChatGPT/Notion AI для написання тестової документації.

Тестова документація є важливою частиною процесу розробки програмного забезпечення. Вона допомагає визначити обсяг робіт, перевірити якість продукту та забезпечити його відповідність вимогам. ChatGPT/Notion AI може значно спростити та прискорити цей процес. Поділюсь детальніше, як можна використовувати ChatGPT/Notion AI для написання тестової документації.У сучасному світі, де швидкість і якість розробки програмного забезпечення є ключовими факторами успіху, автоматизація створення тестової документації стає дедалі актуальнішою. Використання ChatGPT для написання тестової документації може суттєво спростити цей процес, забезпечуючи високу якість і швидкість створення документів. 

Переваги використання ChatGPT / Notion AI

  • 1
    Економія часу: ChatGPT/Notion AI можуть швидко генерувати великий обсяг тексту, зменшуючи час, необхідний для створення тестової документації.
  • 2
    Автоматизація рутини: рутинні завдання, такі як створення тестових випадків, звітів та інструкцій, можуть бути автоматизовані.
  • 3
    Покращення якості: ChatGPT/Notion AI допомагають забезпечити послідовність і відповідність стандартам якості документації.

Кроки для використання ChatGPT / Notion AI

1. Підготовка даних

Перед тим як почати використовувати ChatGPT / Notion AI, важливо підготувати всі необхідні дані:

  • збір вимог: визначте функціональність, яка потребує тестування, і зберіть усі відповідні вимоги до програмного забезпечення;
  • опис тестових сценаріїв: опишіть загальні сценарії тестування та очікувані результати.

2. Налаштування та використання ChatGPT / Notion AI

  • Чітко формулюйте запити до ChatGPT/Notion AI, наприклад: «Напиши тестовий випадок для перевірки функції входу користувача на сайт».
  • Включіть необхідні деталі, такі як передумови, кроки тестування та очікувані результати.

3. Перевірка та коригування

Аналіз результатів:

  • Перевірте згенеровані ChatGPT / Notion AI документи на відповідність вимогам та стандартам якості.
  • Внесіть необхідні коригування.

Оновлення та підтримка:

  • Регулярно оновлюйте тестову документацію на основі нових вимог або змін у програмному забезпеченні.

Для того щоб вже створена документація була відразу в потрібному вигляді, звичайно зручніше використовувати Notion AI. Після генерації запиту створена документація мінімально редагується та зберігається у вже готовому топіку, який можна зашейрити.

Приклади використання ChatGPT / Notion AI

1. Генерація тестових випадків

ChatGPT / Notion AI можуть використовуватись для створення різних тестових випадків, враховуючи передумови, кроки виконання та очікувані результати.

2. Створення інструкцій для тестувальників

Можна генерувати інструкції для нових тестувальників, пояснюючи, як використовувати систему, виконувати тести та звітувати про результати.

3. Автоматизація звітів про тестування

ChatGPT / Notion AI можуть допомогти автоматично генерувати звіти про виконані тести, включаючи інформацію про знайдені баги та їх статус.

Отже, використання ChatGPT / Notion AI для написання тестової документації може значно спростити процес розробки та підтримки тестової документації, забезпечуючи її високу якість і актуальність. Це дозволяє тестувальникам зосередитися на складніших та творчих аспектах тестування, підвищуючи загальну ефективність і продуктивність команди.

ChatGPT / Notion AI є потужними інструментами, які можуть допомогти у створенні детальної, послідовної та якісної тестової документації, що є ключовим елементом у забезпеченні високої якості програмного забезпечення.

Переваги використання ШІ у тестуванні

Переваги використання ШІ в тестуванні очевидні. ШІ може прискорити тестування, автоматизуючи рутинні задачі та виконуючи їх швидше та ефективніше, ніж люди. Він також може підвищити точність тестування, оскільки алгоритми машинного навчання можуть виявляти патерни та аномалії, які можуть залишитися непоміченими для людини.

Потенційні виклики та обмеження

Проте, варто врахувати потенційні виклики та обмеження. Наприклад, ШІ може мати обмежену здатність до розуміння контексту тестування, що може призвести до пропуску деяких проблем або неправильного інтерпретування результатів. Також важливо забезпечити належну підготовку та навчання алгоритмів ШІ, щоб вони могли ефективно виконувати свої завдання в контексті тестування програмного забезпечення.

Отже, використання штучного інтелекту в тестуванні програмного забезпечення може бути дуже корисним для компаній, які прагнуть оптимізувати свої робочі процеси. ШІ може допомогти прискорити тестування, підвищити його точність та ефективність, але важливо розуміти його обмеження та забезпечити правильну інтеграцію у робочий процес тестування.

Підписуйтеся на наші соцмережі

Якщо ви хочете поділитися з читачами SPEKA власним досвідом, розповісти свою історію чи опублікувати колонку на важливу для вас тему, долучайтеся. Відтепер ви можете зареєструватися на сайті SPEKA і самостійно опублікувати свій пост.
0
Прокоментувати
Інші матеріали

Google Photos запускає Ask Photos: як приєднатися до раннього доступу

Вікторія Рудзінська 6 вересня 2024 20:53

Lenovo представив низку гаджетів з ШІ

Анастасія Ковальова 6 вересня 2024 13:03

Штучний інтелект: інновації чи повсякденність?

Anastasiia Kohut 6 вересня 2024 11:40

YouTube розробляє інструменти для ідентифікації штучного інтелекту і фейкових відео

Вікторія Рудзінська 6 вересня 2024 07:09

Winking Studios впроваджує GenMotion.AI в розробці 3D-анімації

Вікторія Рудзінська 5 вересня 2024 17:56