Cucumber Каркас: Що є Cucumber?
⚡ Розумний підсумок
Cucumber – це інструмент тестування, що підтримує розробку на основі поведінки (BDD), що дозволяє будь-кому читати тести незалежно від технічних знань. Цей ресурс пояснює, як працює BDD за допомогою кроків «Дано-Коли-Потім», переваги… Cucumber, і як це порівнюється з Selenium та HP ALM.
Що таке Cucumber?
Cucumber – це інструмент тестування, який підтримує розробку на основі поведінки (BDD). Він пропонує спосіб написання тестів, які може зрозуміти будь-хто, незалежно від його технічних знань. У BDD користувачі (бізнес-аналітики, власники продуктів) спочатку пишуть сценарії або приймальні тести, що описують поведінку системи з точки зору клієнта, для перегляду та затвердження власниками продуктів, перш ніж розробники напишуть свій код. Cucumber фреймворк використовує Мова програмування Ruby.

Як працює BDD Cucumber Автоматизація?
Уявіть, що вам доручено створити модуль переказу коштів у застосунку Net Banking.
Існує кілька способів перевірити це в Cucumber Тестова структура:
- Переказ коштів має відбутися, якщо на рахунку джерела є достатній баланс.
- Переказ коштів має відбутися, якщо реквізити рахунку призначення правильні.
- Переказ коштів має відбутися, якщо пароль транзакції / код RSA / автентифікація безпеки для транзакції, введені користувачем, є правильними.
- Переказ коштів має відбуватися, навіть якщо це банківський вихідний.
- Переказ коштів має відбутися у майбутньому, визначеному власником рахунку.
Команда Сценарій тесту стає більш складним, оскільки ми враховуємо додаткові функції, такі як сума переказу X протягом інтервалу Y днів/місяців, зупинка запланованого переказу, коли загальна сума досягає Z тощо.
Загальна тенденція розробників полягає в тому, щоб розробляти функції, а тестовий код писати пізніше. Як видно з вищезазначеного випадку, Тестовий випадок розробка для цього сценарію є складною, і розробник відкладе Тестування до релізу, після чого вони проведуть швидке, але неефективне тестування.
Щоб подолати цю проблему, Cucumber BDD (Поведінковий розвиток) був задуманий. Це спрощує весь процес тестування для розробника.
In Cucumber BDD, все, що ви пишете, має входити Дано-Коли-Тоді кроки. Розглянемо той самий приклад вище в BDD:
Given that a fund transfer module in net banking application has been developed And I am accessing it with proper authentication
When I shall transfer with enough balance in my source account Or I shall transfer on a Bank Holiday Or I shall transfer on a future date And destination a/c details are correct And transaction password/RSA code/security authentication for the transaction is correct And press or click send button
Then amount must be transferred And the event will be logged in log file
Хіба це нелегко написати, прочитати та зрозуміти? Це охоплює всі можливі тестові випадки для модуля переказу коштів і може бути легко модифіковано для розміщення більшої кількості елементів. Це також більше схоже на написання документації для модуля переказу коштів.
Переваги Cucumber Софтвер
- Корисно залучати зацікавлені сторони бізнесу, які не можуть легко читати код.
- Команда Cucumber Інструмент тестування зосереджується на досвіді кінцевого користувача.
- Стиль написання тестів дозволяє легше повторно використовувати код у тестах.
- Швидке та просте налаштування та виконання.
- Команда Cucumber Інструмент тестування є ефективним інструментом для Тестування.
Cucumber vs Selenium проти ALM
У цьому розділі ми вивчимо різницю між Cucumber, Selenium, та ALM.
| Cucumber | HP ALM (QTP) | Selenium |
|---|---|---|
| Cucumber програмне забезпечення є безкоштовним. | QTP є дорогим. | Це безкоштовно. |
| Cucumber Програмне забезпечення – це інструмент розробки, орієнтований на поведінку. | Це інструмент функціональної автоматизації. | Це функціональний та продуктивний (Selenium інструмент тестування сітки). |
| Плагін у Cucumber інструмент тестування працює швидше. | Плагіни повільніші порівняно з Cucumber та Selenium. | Плагіни повільніші, ніж Cucumber. |
| Cucumber Фреймворк підтримує й інші мови програмування, окрім Ruby, наприклад Java, Scala, Groovy, І т.д. | QTP підтримує лише VB Script. | Selenium опори Java, .Net та багато інших мов. |
| Написання кроків автоматизації – це спільна робота тестувальників та розробників. | In QTP, кроки автоматизації пише лише тестер. | Люблю Cucumber, написання кроків автоматизації – це спільна робота тестувальників та розробників. |
| Команда Cucumber Інструмент тестування підтримує лише веб-середовище. | Підтримує веб-, настільні та будь-які клієнт-серверні програми. | Підтримує лише веб-середовище. |
Також перевірте: - UFT vs Selenium: Різниця між Selenium та HP UFT

