oracle real application testing solution test oracle db before moving production
Ми дійшли до заключної частини серія тестування баз даних Oracle.
Поки що ми мали справу з цим методи тестування бази даних Oracle. Продовжуючи цей фокус, ми заглибимось у подальші подробиці щодо тестування реальних додатків Oracle.
Сьогодні ми вивчимо Oracle Real Application Testing - ефективну систему забезпечення змін, яка оцінює зміну системи в самому тестовому середовищі перед тим, як вводити її у виробництво.
Це провідне рішення Oracle для захоплення реального робочого навантаження БД та заміни його на t це довкілля .
Як неодноразово зазначалося, нам завжди потрібно перевіряти базу даних у всіх можливих вимірах, щоб викорінити нестабільність і переконатися, що ми не стикаємось з непередбаченими проблемами у нашому виробничому екземплярі.
Ми можемо класифікувати Реальне тестування додатків Oracle на два широкі розділи:
- Аналізатор продуктивності SQL
- Відтворення бази даних
Перш ніж рухатись далі, зауважте, що для аналізатора продуктивності SQL та відтворення бази даних потрібне додаткове ліцензування, тобто воно доступне за додаткову плату та опцію Enterprise Edition.
Що ви дізнаєтесь:
Аналізатор продуктивності SQL
Графічний інтерфейс, який використовується для доступу до аналізатора продуктивності SQL та відтворення бази даних, є Enterprise Manager, як показано нижче:
Щоб отримати доступ до SQL Performance Analyzer, просто натисніть на посилання “SQL Performance Analyzer”
(Клацніть на зображення, щоб переглянути збільшене)
Аналізатор продуктивності SQL дозволяє оцінити вплив на продуктивність будь-яких змін у системі, які можуть вплинути на виконання та продуктивність SQL.
Вони надзвичайно корисні у таких випадках, як:
- Оновлення бази даних, виправлення
- Зміни конфігурації операційної системи - програмне чи апаратне забезпечення
- Зміни статистичних даних Oracle Optimizer
- Зміни користувача / схеми
Завжди рекомендується запустити аналіз продуктивності SQL на тесті або a UAT (тестування додатків користувача) , а не на виробничій системі. Оскільки під час тестування наслідків зміни щодо продуктивності ми могли ненавмисно вплинути на користувачів, які працюють у виробничій інстанції. Крім того, запуск його на тесті гарантуватиме, що ми не будемо втручатися в будь-які запущені в даний час процеси у виробництві.
ДО Основний огляд робочого процесу SQL Performance Analyzer наведено нижче:
Аналіз продуктивності SQL передбачає наступні кроки.
Крок 1)Захоплення робочого навантаження SQL
Визначте оператори SQL, які будуть частиною вашого робочого навантаження SQL, з виробничого екземпляра, який ви хочете проаналізувати. Це навантаження в ідеалі повинно відображати навантаження, яке може бути у вас на виробництві.
Ми фіксуємо ці оператори в наборі налаштування SQL і передаємо цей набір налаштування SQL в аналізатор продуктивності SQL.
Оскільки Аналізатор споживає багато ресурсів у вашій системі, ми завжди рекомендуємо запускати їх на тесті або системі UAT. Щоб запустити його на тестовій системі, нам доведеться експортувати набір налаштування SQL, який ми вже створили у виробничій системі, в тестову систему.
Крок No2)Створення завдання аналізатора продуктивності SQL
Щоб запустити Analyzer, потрібно спочатку створити завдання SQL Performance Analyzer. Це завдання - не що інше, як сховище, яке консолідує всі дані про аналіз, який виконується SQL Performance Analyzer. Як було зазначено раніше, набір налаштування SQL подається в якості стимулятора до Аналізатора.
як знайти ключ безпеки мережі -
Крок No3)Попередня зміна пробної версії SQL
Після створення завдання аналізатора продуктивності SQL та набору налаштування SQL нам потрібно побудувати інфраструктуру на тестовій системі.
Зверніть увагу, що коли ми плануємо використовувати систему для тестування, нам потрібно переконатися, що вона дуже схожа на виробничу систему з точки зору обладнання, програмного забезпечення та сховища, щоб ми могли відтворити подібне середовище.
Як тільки тестова система буде належним чином налаштована, ми можемо створити попередньо змінену версію даних за допомогою SQL Performance Analyzer.
Цього можна досягти за допомогою або Enterprise Manager, або API (вбудовані процедури).
Крок No4)Пробна версія SQL для зміни продуктивності
Випробування після зміни проводиться на тестовій системі після внесення деяких змін до системи.
Як тільки це буде завершено, ми маємо дві пробні версії SQL - одну перед зміною та пробну версію для порівняння.
Подібно до випробувальної пробної версії SQL перед зміною, ми можемо створити пробну версію продуктивності SQL після зміни, використовуючи або Enterprise Manager, або API (вбудовані процедури).
Крок No5)Створення звіту
Після виконання випробувань перед зміною та після зміни дані зібраної в них продуктивності можна порівняти, виконавши порівняльний аналіз за допомогою SQL Performance Analyzer.
Після завершення цього завдання порівняння ми можемо створити звіт, щоб визначити ефективність оператора SQL, який був частиною навантаження, яке ми мали намір перевірити.
Переглянувши звіт, ми можемо судити і робити висновки щодо роботи SQL
Заяви, а потім розгорніть системні зміни у виробництві.
Подібним чином ми можемо перевірити різні робочі навантаження з різними системними змінами та переконатися, що протестуємо кожне з них перед тим, як впровадити їх у виробництво.
Ілюстрований вище робочий процес може бути графічно представлений, як показано нижче.
Відтворення бази даних
Щоб запустити інструмент через Enterprise Manager:
(Клацніть на зображення, щоб переглянути збільшене)
Відтворення бази даних дозволяє реалістично перевірити системні зміни, по суті реплікацію вашого виробничого середовища на тестовій системі. Він робить це, фіксуючи бажане навантаження на виробничій системі і відтворюючи його на тестовій системі з точними характеристиками ресурсів вихідного навантаження, такими як виконання SQL, транзакції, витяги та процедури.
Це робиться для того, щоб ми врахували всі можливі наслідки будь-яких змін, включаючи небажані результати, такі як помилки продукту, невідповідні результати або регресія продуктивності.
Широкий аналіз та звітність також допомагають виявити будь-які потенційні проблеми, такі як помилкові обставини та розбіжності в роботі.
Як результат, організації можуть бути впевнені, маючи справу зі змінами, і бути прибутковими в оцінці загального успіху системних змін. Це значно зменшить будь-який ризик, коли ми хочемо здійснити зміни у виробництві. Зміни неминучі, і переконавшись, що ми перевіримо кожен аспект цієї зміни з усіх рівнів, зробимо виробництво більш надійним та міцним.
Основний робочий процес відтворення бази даних показаний нижче:
Зміни, які підтримує відтворення бази даних:
- Оновлення бази даних Oracle, виправлення програмного забезпечення
- Користувач / Схема, Екземпляр бази даних Параметри, такі як пам'ять, введення / виведення
- Зміни апаратного / програмного забезпечення до вузлів RAC (Real Application Cluster)
- Зміни операційної системи, виправлення помилок операційної системи
- Процесор, пам’ять, пам’ять
Повторне виконання бази даних дозволяє нам перевірити різні ефекти можливих змін у системі, відтворюючи практичне навантаження фактичної виробничої системи на тестову систему до того, як вона буде піддана впливу першої. Робоче навантаження на виробництво контролюється, аналізується та реєструється протягом кількісно фіксованого періоду часу. Ці дані реєструються з часом і використовуються для відтворення навантаження на тестових системах.
Виконуючи це, ми можемо успішно перевірити наслідки навантаження до внесення будь-яких змін, які можуть негативно вплинути на виробництво.
Процес роботи такий:
Крок 1) Захоплення робочого навантаження
Ми записуємо всі запити, зроблені клієнтами, у файли, що називаються 'Захоплення файлів' у файловій системі (сховище). Ці файли містять всю важливу інформацію щодо запитів клієнта, таких як SQL, прив'язки, процедури та інформацію про транзакції. Потім ці файли можна експортувати в будь-яку систему на випадок, якщо ми хочемо відтворити їх в іншій системі.
Крок No2)Попередня обробка робочого навантаження
Після того, як ми захопили інформацію в «Файлах захоплення», нам потрібно їх попередньо обробити. На цьому кроці ми створюємо метадані, що містять опис усіх даних, необхідних для відтворення робочого навантаження.
Оскільки цей крок використовує величезну кількість ресурсів із системи, радимо запускати в іншій системі, крім виробничої, де навантаження можна відтворити. Якщо у вас немає іншої системи для тестування, і ви хотіли б запустити їх у виробництві, переконайтеся, що вони працюють у непікові години, щоб користувачі та процеси, що працюють у виробництві, не постраждали.
Крок No3)Відтворення робочого навантаження
Тепер ми можемо відтворити їх у тестовій системі. На даний момент ми відтворюємо всі транзакції, контекст, процедури та SQL, які були захоплені спочатку на етапі збору, накопичуючи дані, оскільки кожен процес зазнає цього переходу.
Крок No4)Створення звітів
Подібно аналізатору продуктивності, ви також можете створювати та переглядати звіти для порівняння кожного з виконаних вами тестів.
На закінчення ми пропонуємо кілька коротких порад під час тестування відтворення бази даних:
- За можливості використовуйте ідентичну систему тестування
- Перевірте по одній зміні, щоб зрозуміти її вплив
- Переконайтеся, що почали з параметрів відтворення за замовчуванням, а потім внесіть зміни, якщо це необхідно, відповідно до ваших вимог.
- Перш ніж виконувати другий повтор, переконайтеся, що зрозуміли всі аспекти тестування
- Не забудьте зберегти результати тестування та задокументувати всі необхідні зміни / дії тестування
- Переконайтеся, що жодне інше робоче навантаження або користувачі не використовують систему під час будь-якого тестового запуску
Висновок:
З різними аспектами та різними методами тестування баз даних та додатків Oracle, будь ласка, завжди переконайтеся, що тестування проводиться якомога частіше та ретельніше; зрозуміти програму та середовище користувача перед тим, як розгортати будь-які зміни або вводити будь-які нові параметри у виробництво.
Рекомендована література
- Найкращі засоби тестування програмного забезпечення 2021 р. (Інструменти автоматизації тестування якості)
- Різниця між робочим столом, тестуванням клієнтського сервера та веб-тестуванням
- Як перевірити базу даних Oracle
- Посібник із тестування безпеки веб-додатків
- Тестування додатків - до основ тестування програмного забезпечення!
- Встановіть свою програму на пристрій і починайте тестування з Eclipse
- Завантажити тестувальник електронної книги
- Підручник з деструктивного контролю та неруйнівного контролю