Категорія: Теоретичний матеріал

Введення в тестування програмного забезпечення

Життєвий цикл програмного забезпечення (SDLC – Software Development Life Cycle) – період часу, який починається з моменту прийняття рішення про необхідність створення програмного продукту і закінчується в момент його повного вилучення з експлуатації. Цей цикл – процес побудови і розвитку програмного забезпечення. Етап 1 – Планування (Planning). На цій фазі клієнт пояснює основні деталі і концепції проекту, оговорюється необхідний ресурс,… Read more →

Особливості вимог програмного забезпечення. Методи тестування. Фази тестування. Класи еквівалентності.

Вимоги (Requirements) до програмного забезпечення – сукупність тверджень щодо атрибутів, властивостей, або якостей програмної системи, що підлягає реалізації: Одиничність – Вимога описує одну і тільки одну річ. Завершеність – Вимога повністю визначена в одному місці і вся необхідна інформація присутня. Послідовність – Вимога не суперечить іншим вимогам і повністю відповідає зовнішній документації. Атомарність – Вимога не може бути розбита на… Read more →

Види Тест Кейсiв. Стани Тест Кейсiв. Багтрекінгові системи. Серйозність і пріоритет дефекту. Життєвий цикл дефекту.

Тестовий випадок / Тест кейс (Test Case) – це артефакт, що описує сукупність кроків, конкретних умов і параметрів, необхідних для перевірки реалізації функції, що тестуємо, або її частини. Основні атрибути Test Case: ID (номер) Name (ім’я) Preconditions (умови і параметри) Steps (кроки до відтворення) Expected result (очікуваний результат) Actual result (фактичний результат) Postconditions (постумови) Проблемні тестові випадки: Які залежні один… Read more →

Рівні тестування

Тестування на різних рівнях проводиться протягом усього життєвого циклу розробки і супроводу ПЗ. Рівень тестування визначає те, над чим виробляються тести: над окремим модулем, групою модулів або системою в цілому. Проведення тестування на всіх рівнях системи – це запорука успішної реалізації та здачі проекту. Рівні тестування (Testing levels): Компонентне або Модульне тестування (Component testing or Unit testing) Інтеграційне тестування (Integration… Read more →

Види тестування ПО. Функціональне тестування (Functional Testing). Тестування безпеки (Security and Access Control Testing). Тестування взаємодії (Interoperability Testing)

Всі види тестування програмного забезпечення, залежно від переслідуваних цілей, можна умовно розділити на наступні групи: Функціональні (Functional testing) Нефункціональні (Non-functional testing) Пов’язані зі змінами (Regression testing) Функціональні види тестування Функціональні тести базуються на функціях і особливостях, а також взаємодії з іншими системами, і можуть бути представлені на всіх рівнях тестування: компонентному або модульному (Component / Unit testing), інтеграційному (Integration testing),… Read more →

Нефункціональне тестування ПЗ

Нефункціональне тестування описує тести, необхідні для визначення характеристик програмного забезпечення, які можуть бути виміряні різними величинами. В цілому, це тестування того, “Як” система працює. Далі перераховані основні види нефункціональних тестів: Всі види тестування продуктивності (Performance testing): тестування навантаження (Load Testing) стресове тестування (Stress Testing) тестування стабільності або надійності (Stability / Reliability Testing) об’ємне тестування (Volume Testing) Тестування установки (Installation testing)… Read more →

Види тестування, пов’язані зі змінами. Кросбраузерність.

Після проведення необхідних змін, таких як виправлення бага / дефекту, програмне забезпечення повинне бути перетестоване для підтвердження того факту, що проблема була дійсно вирішена. Нижче перераховані види тестування, які необхідно проводити після установки програмного забезпечення, для підтвердження працездатності програми або правильності здійсненого виправлення дефекту: Регресійне тестування (Regression Testing) Димове тестування (Smoke Testing) Санітарне тестування або перевірка узгодженості / справності (Sanity… Read more →

Agile (Гнучка модель). Scrum. Selenium

Agile – сімейство процесів розробки, а не єдиний підхід у розробці програмного забезпечення. Agile не включає практик, а визначає цінності і принципи, якими керуються успішні команди. Включає в себе наступні методології: наступних методологій Extreme programming, Scrum, DSDM, Adaptive software development, Crystal Clear, Feature-driven development, Pragmatic Programming. Основні ідеї: Особистості та їх взаємодія є важливішим, ніж процеси та інструменти; Працююче програмне… Read more →