Тестування з використанням phpunit і selenium - навчальний курс по ide netbeans

IDE NetBeans для PHP підтримує автоматичні тести PHPUnit. За рахунок PHPUnit, IDE NetBeans забезпечує покриття коду для PHP, схоже з покриттям коду, забезпечуваним IDE для Python. Висновок тесту відображається в тому ж вікні виводу, що має безліч функцій, яке використовується засобами запуску тестів JUnit і Python середовища IDE.

IDE NetBeans також підтримує переноситься платформу тестування Selenium в поєднанні з PHPUnit. Плагін Selenium доступний з центру оновлення. При установці цей модуль додає сервер Selenium до зареєстрованим серверам середовища IDE, а також додає параметри тестування Selenium до меню PHP.

  • установка PHPUnit
  • Створення та виконання тестів PHPUnit
  • Використання груп тестування
  • Результати тести і висновок середовища IDE
  • покриття коду
  • Використання варіантів настройки для окремих проектів
  • Запуск тестів на платформі Selenium

Для роботи з цим навчальним курсом зверніть увагу на таке програмне забезпечення та ресурси.

Програмне забезпечення або матеріал

Пакет завантаження PHP

Система PHP, включаючи PEAR

Рекомендується використовувати HTTP-сервер Apache 2.2.

Версія 3.4.0 і більш пізні.

установка PHPUnit

Використовуйте PEAR для установки PHPUnit, як описано в документації по PHPUnit і генератор схеми PHPUnit, як описано в документації по генератору схеми. Слід встановити версію PHPUnit 3.4.0 або вище. Спеціальна установка не потрібно. Після установки PHPUnit середу NetBeans зможе розпізнати це засіб тестування. Зверніть увагу на те, що разом з механізмом PHP повинен бути встановлений PEAR. Також слід враховувати, що згідно з документацією по PHPUnit це засіб тестування зазвичай встановлюється в локальний каталог PEAR. У документації вказується шлях / usr / lib / php / PHPUnit. проте в XAMPP для Windows використовується шлях XAMPP_HOME \ php \ PEAR \ PHPUnit.

Тестування з використанням phpunit і selenium - навчальний курс по ide netbeans

Створення та виконання тестів PHPUnit

В IDE NetBeans підтримується створення і запуск тестів PHPUnit у всіх класах PHP в файлі. Для забезпечення роботи генератора тестів дайте файлу PHP ім'я, ідентичне імені першого класу файлу.

Створення та виконання тестів PHPUnit для класу:

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

Тестування з використанням phpunit і selenium - навчальний курс по ide netbeans
Тестування з використанням phpunit і selenium - навчальний курс по ide netbeans
  • У вікні "Проекти" правою кнопкою миші вузол Calculator.php і виберіть команду "Сервіс"> "Створити тести PHPUnit". Зверніть увагу на те, що тести для всіх файлів в проекті можна створювати в контекстному меню для вузла "Вихідні файли".
    Тестування з використанням phpunit і selenium - навчальний курс по ide netbeans
  • При першому створенні тестів в діалоговому вікні виводиться питання про каталог, в якому слід зберегти файли тестів. У цьому прикладі функція "Огляд" використовується для створення папки tests.
    Тестування з використанням phpunit і selenium - навчальний курс по ide netbeans

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

    Зверніть увагу на те, що тест створюється для кожної анотації @assert.

  • Можна виконати тестування окремого файлу або цілого проекту. Для тестування проекту клацніть правою кнопкою миші батьківський вузол проекту і виберіть команду "Тестувати" або натисніть клавіші ALT + F6. Для тестування файлу Calculator.php клацніть правою кнопкою вузол файлу і виберіть 'Тестувати' або натисніть Ctrl-F6 / ⌘-F6. У цьому прикладі існує тільки один клас в одному файлі, так що результати є ідентичними. Середа IDE виконує тести і відображає результати у вікні "Результати тесту".
    Тестування з використанням phpunit і selenium - навчальний курс по ide netbeans

    Більш детальна текстова версія результатів відображається у вікні "Висновок".

    Тестування з використанням phpunit і selenium - навчальний курс по ide netbeans
  • Використання груп тестування

    Можна вибрати, які групи тестування будуть виконуватися під час запуску набору тестів. Наприклад, деякі тести можуть виконуватися тільки у виробничому середовищі, а інші - як у виробничому середовищі, так і в середовищі розробки. Тести першого виду ви помістіть в групу production. а другого - в групи production і development. При запуску набору тестів в середовищі розробки ви вибираєте для виконання тільки групу тестування development.

    Необхідно активувати групи тестування для проекту PHP до використання цих груп на будь-якому з файлів даного проекту.

    Щоб відзначити тест як частина групи тестування, додайте до методу тесту анотацію @group [group name].

    Створення та виконання груп тестування.

    Результати тесту і висновок середовища IDE

    Результати тестів PHPUnit відображаються в двох вікнах середовища IDE - "Результати тесту" і "Висновок". Вікно "Результати тесту" має графічну панель і коротку текстову панель. Вікно "Висновок" надає більш детальну текстову версію вихідних даних. В цьому розділі вікна "Результати тесту" і "Висновок" розглядаються більш докладно.

    У вікні "Результати тесту" відображаються відомості про тести зі збоями однією з таких адрес:

    На лівій стороні вікна "Результати тесту" розташовані такі кнопки:

    • Повторне виконання тесту;
    • Показати неуспішні тести
    • Показати успішні тести
    • Показати завершені тести, що містять помилки
    • Перехід між відображенням наступного результату тесту або попереднього результату тесту.

    У вікні "Висновок" відображаються всі вихідні дані сценарію PHPUnit. Використання цієї функції доцільно, якщо причину помилки неможливо встановити за допомогою інформації в вікні "Результати тесту". Як і вікно "Результати тесту", вікно "Висновок" містить посилання на рядок класу тесту з помилкою. Також включає в себе кнопки на лівій стороні для повторного виконання тесту і для відкриття вікна параметрів PHP.

    Тестування з використанням phpunit і selenium - навчальний курс по ide netbeans

    охоплення коду

    IDE NetBeans для PHP забезпечує покриття коду разом з підтримкою PHPUnit. (Середа IDE також пропонує покриття коду для Python). Функція покриття коду перевіряє, чи всі використовувані методи покриваються тестами PHPUnit. У цьому розділі ми побачимо, як працює покриття коду для існуючого класу Calculator.

    Використання функції покриття коду:

    Увага! При повторному створенні файлів тесту ПІСЛЯ додавання функції add2 тести PHPUnit виконуватися не будуть. Причиною цього є те, що PHPUnit створює дві конфліктуючі функції testAdd2. Чи не розмежовуйте функції додаються в кінці номерами, якщо плануєте використовувати PHPUnit для декількох подібних функцій. Див. Документацію по PHPUnit.

    Використання варіантів настройки для окремих проектів

    У середовищі IDE для проекту можна вибрати наступні особливі варіанти настройки:

    • файл початкового завантаження;
    • файл настройки в форматі XML;
    • набір тестів.
    • Призначений для користувача сценарій PHPUnit

    Налаштування конфігурації, пов'язаної з проектом.

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

    Файл XML налаштування дозволяє визначити параметри, які використовуються у виклику з командного рядка. У керівництві по PHPUnit є повне введення. За допомогою файлу XML налаштування також можна визначити параметри php.ini і глобальні змінні для тестів. Параметр початкового завантаження може бути вказаний і в файлі XML настройки.

    Якщо встановлений особливий набір тестів. він запускається при кожному виборі пункту меню "Виконати> Тестування проекту". Це особливо зручно, якщо потрібно запустити тільки підмножина всіх тестів, або якщо потрібно використовувати недавно реалізовані функції PHPUnit, які необхідно додавати вручну, наприклад джерела даних. Слід зазначити, що існує можливість створювати будь-яку кількість наборів тестів і запускати їх окремо; для цього потрібно клацнути файл у провіднику проектів і вибрати пункт меню "Виконати". Щоб уникнути непорозумінь при використанні особливого набору тестів видається попередження. Це попередження виводиться в вікні "Результати тесту" і в вікні виводу.

    Призначений для користувача сценарій PHPUnit можна використовувати для проекту, замість сценарію за замовчуванням, обраного в 'Сервіс'> 'Параметри'. Призначений для користувача сценарій PHPUnit може включати в себе будь-які перемикачі командного рядка, описані в керівництві по PHPUnit.

    Запуск тестів на платформі Selenium

    Selenium - це переноситься платформа тестування програмного забезпечення для веб-додатків. Тести можуть бути створені у вигляді таблиць HTML або написані за допомогою різних популярних мов програмування. Тести запускаються безпосередньо в більшості сучасних браузерів. Selenium може розгортатися в системах Windows, Linux і Macintosh. Додаткові відомості наведені на веб-сайті Selenium.

    В IDE NetBeans є модуль, що включає сервер Selenium. Цей модуль дозволяє виконувати тести Selenium в PHP, веб-додатках або проектах Maven. Щоб запустити тести Selenium в PHP, слід встановити пакет Testing Selenium в системі PHP.

    Запуск тестів Selenium в PHP:

    додаткові вправи

    Нижче наведені додаткові думки для дослідження:

    • Додайте другий клас до Calculator.php, такий як клас Calculator2. виконує множення $ a на $ b. Видалення і відновлення тестів.
    • При роботі з навчальним курсом по створенню додатка CRUD. що складається з декількох частин, створіть тест Selenium для підсумкового проекту.

    додаткові відомості

    Додаткові відомості про тестування PHP в IDE NetBeans см. В наступних ресурсах: