Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


АВТОМАТИЗОВАНЕ ТЕСТУВАННЯ



    При створенні безлічі збірок група повинна багаторазово тестувати функції, що вже працюють в попередніх збірках. Цей процес повторного тестування, який раніше називали «добротним кодом» (good code), носить ім'я  регресійного тестування . Він гарантує, що внесені зміни не призведуть до помилок в раніше протестованому коді. У разі CI в кінці кожної збірки запускаються автоматичні сценарії регресійних тестів. Це дозволяє розробникам негайно отримувати інформацію про помилки, знайдених в новій збірці. Цей крок попереджає розробників, коли знову створений ними код не відповідає вимогам. Без регресійних тестів розробники знають тільки, що складання виконане. Оскільки тести все одно повинні створюватися, то TDD Не додає додаткову роботу. Просто змінюється порядок дій - спочатку створюються тести, а потім код.

    При традиційній розробці методом «водоспад» проект міг обходитися без всякої автоматизації тестування. Його можна було описувати, виконувати і відчувати нескінченно цілою армією людей. Але як тільки починаються регулярні випуски, цей процес стикається з проблемами. Просто неможливо тестувати систему вручну багато разів на день.

Генерації звітів

Активне оповіщення:

· Mail;

· SMS;

· Миттєві повідомлення.

Пасивне оповіщення:

· Web публікація;

· Файловий сервер.

ПЕРЕВАГИ

· Скорочення ручних операцій - етапи створення, збірки і тестування програмного забезпечення проводяться в автоматичному режимі.

· Наявність робочої ІТ-системи на всьому протязі процесу розробки - у проектної команди завжди є свіжа версія рішення для демонстрації замовнику, отримання зворотного зв'язку і швидкого доопрацювання.

· Якість програмного забезпечення - в рамках Continuous Integration використовуються різні програмні засоби для контролю якості коду, що дозволяє скоротити кількість помилок.

· Мінімізація ризиків - дефекти виявляються на ранніх стадіях розробки інформаційної системи, що допомагає уникнути збільшення термінів і вартості проекту.

· Окупність інвестицій в ІТ - автоматизація процесу розробки забезпечують високу ефективність і надійність інформаційної системи.

1.4 НЕДОЛІКИ

· витрати на підтримку роботи безперервної інтеграції;

· потенційна необхідність у виділеному сервері під потреби безперервної інтеграції;

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

· у разі використання системи управління версіями вихідного коду з підтримкою розгалуження, ця проблема може вирішуватися створенням окремої «гілки» (англ. branch) проекту для внесення великих змін (код, розробка якого до працездатного варіанти займе декілька днів, але бажано більш часте резервне копіювання в репозиторій). Після закінчення розробки і індивідуального тестування такої гілки, вона може бути об'єднана (англ. Merge) з основним кодом або «стволом» (англ. Trunk) проекту.

ІНСТРУМЕНТИ

· Розгортання і підготовка до роботи: VMWare, Microsoft Hyper-V, Citrix Xen, Parallels.

· Засоби розробки: Eclipse, MS Visual Studio, Borland Delphi і т. д.

· Системи контролю версій: StarTeam, Perforce, CVS, PVCS, VSS, Synergy, Subversion, GIT і т. д.

· Компілятори і засоби збирання: Compilers, Linkers, Ant, Make, Nant MSBuild, Maven.

· Контроль якості: Mercury Quality Center, LoadRunner, TestDirector, WinRunner, Xunit, Clover, IBM Functional, Performance & Manual Tester

· Сервера інтеграції

1. CruiseControl - сервер інтеграції для Java (див. так само CruiseControl ).

2. ThoughtWorks Cruise - комерційний сервер інтеграції від компанії ThoughtWorks (є безкоштовна версія).

3. CruiseControl.NET - сервер інтеграції для.NET (див. так само CruiseControl.NET )

4. CruiseControl.rb - сервер інтеграції для Ruby.

5. Hudson - open-source сервер інтеграції, створений як альтернатива CruiseControl. Функціональність розширюється плагінами.

6. Bitten - open-source сервер інтеграції написаний на Python, інтегрується з Trac.


Поделиться:



Последнее изменение этой страницы: 2019-04-09; Просмотров: 51; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.01 с.)
Главная | Случайная страница | Обратная связь