devops testing tutorial
Підручник з тестування DevOps: Недавнє опитування RightScale показало, що 54% компаній прийняли DevOps, а інтерес до DevOps швидко зростає.
У цій статті ми дізнаємося, як ця нова методологія розробки програмного забезпечення впливатиме на якість якості та як функція контролю якості в цілому повинна розвиватися, щоб охопити ці зміни.
Перевірка => Повна серія навчальних посібників DevOps
У цій статті ми дізнаємось більше про DevOps та про те, як це вплине на контроль якості та його функції.
Що ви дізнаєтесь:
Що таке DevOps?
DevOps - це поєднання Розробникelopment &Увімкненоерації - це методологія розробки програмного забезпечення, яка прагне інтегрувати всі функції розробки програмного забезпечення від розробки до операцій у межах одного циклу.
Це вимагає вищого рівня координації між різними зацікавленими сторонами в процесі розробки програмного забезпечення (а саме Розробка, забезпечення якості та операції )
Цикл DevOps
Ідеальний цикл DevOps починався б із:
- Розробник написання коду
- Створення та розгортання двійкових файлів у середовищі контролю якості
- Виконання тестових кейсів і, нарешті
- Розгортання на виробництві одним плавним інтегрованим потоком.
Очевидно, що такий підхід робить великий акцент на автоматизації побудови, розгортання та тестування. Використання інструментів безперервної інтеграції (CI), засобів тестування автоматизації стає нормою в DevOps циклу.
Чому саме DevOps?
Хоча між ними є тонкі відмінності Тестування Agile та DevOps , ті, хто працює з Agile, знайдуть DevOps трохи більш звичним для роботи (і, зрештою, прийняття). Хоча принципи Agile успішно застосовуються в ітераціях розробки та забезпечення якості, на стороні операцій це зовсім інша історія (і часто суперечка). DevOps пропонує виправити цю прогалину.
підручник із селену для веб-драйверів Java eclipse pdf
Тепер, замість Безперервної інтеграції, DevOps передбачає “Постійний розвиток” , де код був написаний і призначений для контролю версій, буде побудований, розгорнутий, протестований та встановлений у виробничому середовищі, яке готове до споживання кінцевим користувачем.
Цей процес допомагає кожному в усьому ланцюжку, оскільки середовища та процеси стандартизовані. Кожна дія в ланцюжку автоматизована. Це також дає свободу всім зацікавленим сторонам зосередити свої зусилля на розробці та кодуванні високоякісного результату, а не турбуватися про різні процеси будівництва, експлуатації та контролю якості.
Це істотно скорочує час життя до приблизно 3-4 годин, від часу написання та заповнення коду, до розгортання у виробництві для споживання кінцевим споживачем.
У двох словах, DevOps - це розширення Agile, або я люблю називати його “Agile on Steroids”.
Змінена роль контролю якості в DevOps
Традиційно QA отримує збірку, яка розгортається у призначеному для них середовищі, а QA починає їх Функціональний & Регресійне тестування . Збірка в ідеалі сиділа б із QA протягом декількох днів до підписання QA на збірці. Усі ці дії змінюються в DevOps.
Зміни якості для тестування DevOps:
- Забезпечення якості потрібно для узгодження своїх зусиль у циклі DevOps.
- Вони повинні переконатись, що всі їх тестові кейси автоматизовані та забезпечити майже 100% охоплення коду.
- Їм потрібно переконатися, що їх середовища стандартизовані, а розгортання на їх ящиках контролю якості автоматизоване.
- Всі їх завдання перед тестуванням, очищення, завдання після тестування тощо автоматизовані та узгоджені з циклом безперервної інтеграції.
Як уже зазначалося, DevOps вимагає високого рівня координації між різними функціями ланцюжка поставок. Це також означає, що межі між різними ролями учасників ланцюга стають пористими.
DevOps закликає всіх до участі в ланцюжку . Отож, серед іншого, розробник може налаштувати розгортання. Інженери з розгортання можуть додавати тестові приклади до сховища контролю якості. Інженери QA можуть налаштувати свої тести на автоматизацію в ланцюжок DevOps.
Усі разом у ланцюзі відповідають за якість та своєчасність результатів.
DevOps та автоматизація тестів
Для досягнення такої швидкості та спритності важливо автоматизувати всі процеси тестування та налаштувати їх автоматичний запуск після завершення розгортання в середовищі контролю якості. Для досягнення цієї інтеграції використовуються спеціалізовані засоби тестування автоматизації та інструменти безперервної інтеграції.
Це також вимагає побудови зрілої системи тестування автоматизації, за допомогою якої можна швидко створювати нові тестові кейси.
Стратегія тестування DevOps: Поради щодо успіху DevOps
- Потрібно визначити тестові кейси, які потрібно виконати для певної збірки.
- Виконання тесту повинно бути по суті хитрим.
- QA та Dev повинні сидіти разом та виявляти зони, що зазнали впливу через конкретну побудову та виконання відповідних тестових випадків, плюс проходження перевірки на розумність.
- Вам також потрібно налаштувати спеціалізовані інструменти аналізу коду та охоплення, щоб переконатися, що ви досягнете майже 100% охоплення коду.
- Концепція виконання всі регресійні тестові випадки для проходження тесту незабаром застарівають.
- Потрібно формалізувати стратегію навколо тестування нових функцій, а проміжні збірки можна подати до контролю якості, який, у свою чергу, створить тестові сценарії та запустить ці тести автоматизації на проміжних збірках, поки код не стане достатньо стабільним для розгортання у виробничому середовищі. .
- Всі середовища, необхідні для тестування, повинні бути стандартизовані, а розгортання - автоматизованими.
- Використовуючи різні методи автоматизації, служба контролю якості повинна мати можливість запускати тестування автоматизації в різних середовищах між платформами (і між браузерами у випадку веб-додатків).
- Паралельне виконання тестів допомагає скоротити час життя, що, в свою чергу, є суттю успішної реалізації DevOps.
- Критерії виходу потрібно встановлювати для кожного циклу, щоб, коли результати тестів повертаються назад до ланцюга, приймалося рішення про вихід / заборону виробництва.
- Виявлені помилки блокувальників або критичних помилок потрібно повідомляти та виправляти та передавати через той самий ланцюжок подій, перш ніж код буде розгорнуто у виробничому середовищі.
Моніторинг додатків
Організація контролю якості також повинна мати можливість виявляти проблеми на ранній стадії та повідомляти про них заздалегідь. Для цього їм потрібно налаштувати моніторинг виробничого середовища, щоб мати змогу викривати помилки, перш ніж вони спричинять збій.
Налаштування спеціалізованих лічильників, таких як час відгуку, використання пам'яті та процесора тощо, може надати значну інформацію про досвід кінцевого користувача.
Наприклад , якщо середній час відгуку для входу поступово збільшується протягом різних збірок, система контролю якості повинна активно повідомляти про цю проблему для оптимізації коду входу, інакше майбутні збірки можуть викликати розчарування кінцевого користувача через великий час відгуку.
Система контролю якості може також використовувати невелику підмножину існуючих тестів з високим пріоритетом, які періодично виконуватимуться на виробництві, для активного моніторингу навколишнього середовища. Такі помилки, як 'Ця помилка іноді з'являється' або ' Неможливо відтворити ”Можна вловити за допомогою цієї стратегії, яка, зрештою, робить додаток більш стабільним, а також отримує більш задоволених кінцевих користувачів.
Знову ж таки, ці монітори потрібно налаштувати для автоматичного запуску з розширеними звітами (наприклад, журналами та скріншотами відмов тощо).
найкращі сайти для скачування mp3 для android - -
Висновок
Водоспад поступився місцем V-Model, яка, у свою чергу, була замінена Agile як кращий вибір для розробки програмного забезпечення.
DevOps - це майбутнє. Це постійний цикл вдосконалення, який час від часу проходять моделі розробки програмного забезпечення. Вам потрібно обійняти, зрозуміти і прищепити це.
Вам потрібно освоїти різні засоби автоматизації та безперервної інтеграції, щоб ваші зусилля з автоматизації додали цінності ланцюгу та були достатньо стрункими, щоб швидко адаптуватися до змін. Можливо, ви працюєте над проектами, які можуть включати альфа , бета-версія і UAT середовища до розгортання у виробничому середовищі.
По суті, концепція залишається незмінною. Автоматизація та більша автоматизація - це серцевина успішного циклу DevOps. Але, як QA, ви також повинні мати змогу провести межу щодо того, наскільки автоматизація - це занадто багато автоматизації.
Про автора: Анікет Дешпанде працює менеджером з контролю якості в AFour Technologies , Пуна, та працює у галузі тестування програмного забезпечення протягом останніх 9+ років у різних доменах та платформах. Він захоплений DevOps і працює консультантом для керівництва організаціями в прийнятті стратегій тестування DevOps.
Якщо вам цікаво дізнатись більше або ви хочете впровадити DevOps та відповідний тестовий підхід у своїй організації, сміливо контакт Автор.
Що ви думаєте про тестування DevOps? Як ви думаєте, залучивши розробників та спеціалістів до спільної роботи, це може принести користь проекту?
Повідомте нам свої коментарі / пропозиції щодо цієї статті.
НАЗАД Підручник | НАСТУПНИЙ підручник
Рекомендована література
- Постійне тестування в DevOps
- Підручник DevOps: Остаточне керівництво по DevOps (25+ підручників)
- Демістифікація DevOps: Підручник з відео (Частина 1)
- Топ-10 інструментів безперервного тестування для тестування DevOps (Список 2021)
- Найкращі засоби тестування програмного забезпечення 2021 р. (Інструменти автоматизації тестування якості)
- Що таке тестування програмного забезпечення? 100+ безкоштовних підручників з тестування вручну
- Функціональне тестування проти нефункціонального тестування
- Альфа-тестування та бета-тестування (повний посібник)