Top Javascript Testing Frameworks 2020

Три способи, як можуть бути протестовані програми написані на javascript.

Unit Testing — полягає в тестуванні окремих функціональностей незалежно одна від одної за допомогою певного методу blackbox testing, де вхідні дані мають уже відомий вихід, щоб забезпечити отримання очікуваних результатів.

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

Третій: відомий як Тестування користувальницького інтерфейсу User Interface UITesting, використовується в основному для тестування програм, керуючи браузером без особливого акценту на внутрішній роботі.

А зараз давайте зробимо разом швидкий огляд найпопулярніших фреймворків Тестуванння на JS

  • Jest, мабуть, найпоширеніший у використанні фреймворк тестування JavaScript. Понад 31 тис. голосів 6.5k stars причому за останній рік. Створений і постійно підтримується командою у Facebook. Сумісний з NodeJS, React, Angular, VueJS та іншими проектами на основі Babel
  • MochaJS — теж доволі популярний фреймворк тестування JavaScript. Mocha зарекомендував себе як стабільний фреймворк. Ключові переваги: зручний для прописування test cases, NodeJS debugger, Точна звітність, Підтримка всіх браузерів. Гнучкий і відкритий для безлічі розширень. Він працює на Node.js і підходить як для frontend так і backend asynchronous testing.
    Mocha часто використовується у парі із Chai Behaviour-Driven Development and Test-driven development assertion бібліотекою.
  • Puppeteer — це бібліотека Node, а не фрейморк, подібно решті списку. Має низку переваг щодо тестування JavaScript у Chrome завдяки high-level API. Додаткові переваги Puppeteer включають: Легку автоматизацію тестування інтерфейсу, keyboard inputs, легке створення скріншотів та PDF-файлів веб-сторінок. Підтримка тестування розширень хрому. Можна легко діагностувати проблеми перфомансу на сайті, використовуючи timeline. Хоча Puppeteer зовсім новий інструмент, його майбутнє виглядає багатообіцяючим.
  • Jasmine — фреймворк ще 2010 року. Хороший для тестування респонсіву UI тестів. Можна також автоматизувати поведінку користувачів із власною затримкою та часом очікування для моделювання фактичної поведінки користувача. Теж працює для frontend та backend tests.
  • Karma — open-source productive testing environment. Karma дозволяє QA виконувати сценарій програми на реальних браузерах та пристроях, таких як телефони та планшети. Головні переваги: підтримує інтеграцію з багатьма сторонніми інструментами CI / CD, такими як Jenkins, Travis та Semaphore, середовища як PhantomJS. Дистанційне тестування безпосередньо з терміналу або IDE. Може працювати разом із Mocha, Jasmine.
  • Cypress — Е2Е фреймворк автомазизації браузера на зразок Selenium теж удосконалюється та набирає оберти популярності.

Іншими популярними фреймворками є TestCafe, Protractor.

Переможця у цьому ТОП -і звісно не має. Вибирати слід під вирішення конкретної задачі.

Курси та події

Публікації

Відео