Early - стартап, який робить революцію у unit-тестуванні

Переклад статті https://generativeai.pub/earlyai-by-early-aims-to-revolutionize-software-unit-testing-790682d7dc81

EarlyAI By Early Aims To Revolutionize Software Unit Testing

Два тижні тому Crowdstrike, постачальник безпекових рішень, відомий своєю платформою Falcon, спричинив одне з найбільших порушень в ІТ-історії. Цей інцидент вплинув на мільйони операційних систем Windows у всьому світі, що призвело до глобального збою, який, за оцінками страховиків, обійдеться компаніям зі списку Fortune 500 США приблизно в 5,4 мільярда доларів. Нещодавно генеральний директор компанії Delta повідомив, що збій CrowdStrike-Microsoft коштував авіакомпанії 500 мільйонів доларів.

Що ж пішло не так, і як цього можна уникнути в майбутньому?

Crowdstrike виявив, що проблемне оновлення конфігурації Rapid Response Content стало причиною масштабних системних збоїв. Незважаючи на проходження обширного процесу контролю якості, який включав автоматизоване тестування, ручне тестування, валідацію та етапи впровадження, Rapid Response Content пройшло за іншою процедурою.

crowdstrike airport image from Associated Press

Цей інцидент підкреслює важливість ретельного та ефективного тестування при розробці програмного забезпечення та його розгортання.

Протягом багатьох років проведення автоматизованих тестів перед випуском продуктів для клієнтів було найкращою практикою. Однак ці тести іноді не виявляють усі потенційні помилки.

З розвитком штучного інтелекту з’явилися інструменти, які більш ефективно автоматизують процес юніт-тестування. Одним із таких інструментів на базі штучного інтелекту є EarlyAI від Early.

Що таке EarlyAI?

EarlyAI - це інструмент на базі штучного інтелекту, який генерує автоматизовані, всеосяжні та економічно ефективні робочі юніт-тести для проєктів на TypeScript, JavaScript які використовують Jest або Mocha.

EarlyAI може генерувати значну кількість якісних робочих зелених юніт-тестів за лічені хвилини, щоб ви могли зосередитися на тому, що ви вмієте найкраще: кодити та запускати продукти.

У цій статті я покажу вам покроковий процес встановлення EarlyAI і як генерувати юніт-тести.

Початок роботи з EarlyAI.

Передумови

Перед початком переконайтеся, що ваше середовище готове. Встановіть на свій комп’ютер:

  • VS Code (переконайтеся, що у вас встановлена версія LTS)

  • Node.js

Як встановити EarlyAI

Відкрийте VS Code і на вкладці розширень знайдіть "EarlyAI".

EarlyAI screenshot in VS Code

Натисніть кнопку «Install», і після завершення встановлення ви побачите розширення EarlyAI на лівій вкладці. Якщо розширення продовжує завантажуватися, не хвилюйтеся, вам потрібно відкрити проєкт, щоб воно запрацювало.

Як налаштувати EarlyAI

Щоб продемонструвати, як працює EarlyAI, візьмемо todo-app. Клонувати репозиторій GitHub на ваш локальний комп’ютер, і ви побачите наступні файли:

List of files todo-application for test with Early AI

Далі відкрийте проєкт у VS Code і в терміналі виконайте цю команду:

npm install

Ця команда інсталює всі залежності необхідні для запуску проєкту.

EarlyAI screenshot in VS Code

Наступний крок – відкрити розширення EarlyAI і увійти за допомогою вашої електронної адреси для перевірки.

EarlyAI screenshot in VS Code

Посилання для входу буде надіслано на вашу електронну пошту, яке активує розширення, і ви побачите наступний інтерфейс у VS Code.

Автоматично буде згенеровано покриття тестів. Ви також можете натиснути на маленьку іконку оновлення, щоб оновити значення покриття тестів.

EarlyAI screenshot in VS Code

Зверніть увагу, що EarlyAI пропонує встановити jest, ts-jest і ts-node, виконавши наступну команду:

npm install jest \
            ts-jest \
            ts-node \
            @types/jest --save-dev

Також рекомендовано встановити розширення Jest, яке підтримує всі функції Jest у середовищі VS Code, щоб зробити тестування більш інтуїтивно зрозумілим.

Просто перейдіть на вкладку розширень і знайдіть Jest. Натисніть кнопку встановлення та переконайтеся, що в вікні виводу не відображаються помилки.

EarlyAI screenshot in VS Code

Після завершення процесу інсталяції EarlyAI, ми готові генерувати юніт-тести.

Усунення неполадок

Якщо у вас виникли проблеми з розширенням EarlyAI, спробуйте ці кроки:

  • Перезавантажте вікно, якщо дерево файлів не заповнене.

  • Переконайтеся, що ваша конфігурація Jest відповідає налаштуванням вашого проєкту, з collectCoverage, встановленим на true.

  • Перевірте, чи встановлені та оновлені всі залежності, такі як Jest і @types/jest.

  • Слідкуйте за вікном виводу логів “EarlyAI” у VS Code на наявність повідомлень про помилки та діагностики.

  • Підтримка для моно-репозиторію в розробці, і навіть якщо Jest не встановлено або EarlyAI не може запустити його з кореневого каталогу, ви все одно можете створювати тести з Jest, але покриття не відображатиметься в інтерфейсі.

Якщо проблеми зберігаються, повідомте про проблему в репозиторії GitHub.

Генерація юніт-тестів

У файловому провіднику коду оберіть необхідні папки, щоб показати імена методів і функцій. Ви помітите праворуч кнопку запуску.

EarlyAI screenshot in VS Code

Натисніть на неї, і генерація тесту одразу розпочнеться. Генерація тесту може зайняти від 15 до 45 секунд, а іноді й довше, залежно від складності коду та часу відгуку API. Ви побачите сповіщення в нижньому правому куті після завершення тесту.

Інший спосіб згенерувати тест – відкрити файл для тестування, клацнути правою кнопкою миші та вибрати "Early AI Generate Tests".

Примітка: Покриття оновлюється автоматично після генерації тестів.

Щоб переглянути тест, натисніть на іконку тестового файлу поруч з іменем функції. EarlyAI створює комплексні тести, які охоплюють моки, логіку, happy paths та edge cases. Вона генерує два типи юніт-тестів:

  • Зелені тести: Це успішні тести, що пройшли.

  • Червоні тести: Ці тести або виявляють помилку, або містять помилки.

На зображенні нижче ви побачите приклад зеленого тесту.

EarlyAI screenshot in VS Code

Нижче приклад червоного тесту. Зверніть увагу, що ви можете натиснути на маленьку червону іконку «x», щоб повторно запустити тест.

EarlyAI screenshot in VS Code

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

Вітаємо! Ви щойно створили та запустили автоматизований тест у вашому додатку.

Чому EarlyAI важливий?

Традиційно забезпечення якості (QA) значною мірою спиралося на ручне тестування, яке було трудомістким, витратним за часом та схильним до людських помилок. Однак з появою штучного інтелекту методології забезпечення якості були революціонізовані, забезпечуючи автоматизацію, точність та безпрецедентну масштабованість.

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

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

Висновки

ШІ змінює правила гри в забезпеченні якості програмного забезпечення, роблячи тестування швидшим, точнішим і набагато менш трудомістким. Інструменти, як EarlyAI, демонструють, наскільки потужним може бути ШІ для розробників. Він допомагає автоматизувати створення юніт-тестів, економлячи час і зусилля, виявляючи більше проблем.

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

Я з нетерпінням чекаю на інтеграцію цього розширення VS Code у свій щоденний робочий процес програмування та подивлюся, наскільки добре воно покращує мою продуктивність та якість коду. Спробуйте EarlyAI зараз і дайте знати, що ви думаєте в коментарях.

Підтримати автора можна зареєструвавшись на сайті Whitebit за реферальним посиланням https://whitebit.com/referral/6f7c7706-ec7d-4a60-8021-adf88b3a9559

Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Crypto blogger
Crypto blogger@crypto_blogger

693Прочитань
5Автори
7Читачі
Підтримати
На Друкарні з 24 лютого

Більше від автора

Вам також сподобається

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Вам також сподобається