7.Тестування програм. Основні етапи тестування.
Тестування програмного забезпечення – техніка контролю якості, що перевіряє відповідність між реальною та очікуваною поведінкою програми завдяки кінцевому набору тестів, що обираються певним чином.
Тестування - це одна з технік контролю якості, що включає в себе
• Планування робіт (Test Management)
• Проектування тестів (Test Design)
• Виконання тестування (Test Execution)
• Аналіз отриманих результатів (Test Analysis).
Верифікація (Verification) - це процес оцінки системи або її компонентів з метою визначити чи задовольняють результати поточного етапу розробки умовам, сформованим на початку цього етапу. Тобто чи виконуються цілі, терміни, завдання з розробки проекту, визначені на початку поточної фази.
Валідація (Validation) - це визначення відповідності розроблюваного програмного забезпечення між очікуваннями і потребами користувача, вимогам до системи.
План Тестування (Test Plan) - це документ, що описує весь обсяг робіт з тестування, починаючи з опису об'єкта, стратегії, розкладу, критеріїв початку і закінчення тестування, до необхідного в процесі роботи обладнання, спеціальних знань, а також оцінки ризиків з варіантами їх вирішення.
Тест дизайн (Test Design) - це етап процесу тестування програмного забезпечення, на якому проектуються і створюються тестові випадки (тест кейси), відповідно до визначених раніше критеріями якості та цілями тестування.
Тестовий випадок (Test Case) - це документ, що описує сукупність кроків, конкретних умов і параметрів, необхідних для перевірки реалізації тестованої функції або її частини.
Баг/Дефект Репорт (Bug Report) - це документ, що описує ситуацію або послідовність дій (Steps), що призвела до некоректної роботи об'єкта тестування (Misbehavior), із зазначенням причин та очікуваного результату (Expected Result).
Тестове Покриття (Test Coverage) - це одна з метрик оцінки якості тестування, що представляє із себе щільність покриття тестами вимог або коду, що виконується.
Деталізація Тест Кейсів (Test Case Specification) - це рівень деталізації опису тестових кроків і необхідного результату, при якому забезпечується розумне співвідношення часу проходження до тестового покриття.
Час Проходження Тест Кейса (Test Case Pass Time) - це час від початку проходження кроків тест кейса до отримання результату тесту.
Види тестування програмного забезпечення
За ступенем автоматизації:
• Ручне тестування (manual testing)
• Автоматизоване тестування (automated testing)
• Напівавтоматизованих тестування (semiautomated testing)
За ступенем підготовленості до тестування:
• Тестування по документації (formal testing)
• Тестування ad hoc або інтуїтивне тестування (ad hoc testing) - тестування без тест плану та документації, що базується на методиці передбачення помилки та власному досвіді тестера.
За ступенем ізольованості компонентів:
• Компонентне (модульне) тестування (component/unit testing)
• Інтеграційне тестування (integration testing)
• Системне тестування (system/end-to-end testing)
За часом проведення тестування:
Альфа-тестування (alpha testing)
• Тестування при прийманні або Димове тестування(smoke testing)
• Тестування нової функціональності (new feature testing)
• Регресивне тестування (regression testing)
• Тестування при здачі (acceptance testing)
Бета-тестування(beta testing)
За об'єктом тестування:
Функціональне тестування (functional testing)
Тестування продуктивності (performance testing)
• Навантажувальне тестування (load testing)
• Стрес-тестування (stress testing)
• Тестування стабільності (stability/endurance/soak testing)
Тестування зручності використання або Юзабіліті-тестування (usability testing)
Тестування інтерфейсу користувача (UI testing)
Тестування безпеки (security testing)
Тестування локалізації (localization testing)
Тестування сумісності (compatibility testing)
За ознакою позитивності сценаріїв:
• Позитивне тестування (positive testing)
• Негативне тестування (negative testing)
Рівні тестування
Модульне тестування тестує мінімальний компонент програми, або модуля. Кожний модуль тестується для перевірки правильності його реалізації.
Інтеграційне тестування виявляє дефекти в інтерфейсах та у взаємодії між компонентами (модулями).
Системне тестування тестує інтегровану систему для перевірки відповідності всім вимогам.
Системне інтеграційне тестування перевіряє, чи система інтегрується в будь-яку зовнішню систему (або системи) відповідно до системних вимог.
Приймальне тестування може проводитись кінцевим користувачем, замовником, або клієнтом для перевірки, чи може продукт бути прийнятий до використання.
• альфа-тестування — це симульоване або реальне операційне тестування потенційними користувачами/замовником або командою тестувальників на боці розробника.
• бета-тестування йде після альфа-тестування. Версії програмного забезпечення, відомі як бета-версії, надаються у користування обмеженій кількості людей поза компанією для того, щоб упевнитись, що програма не містить великої кількості помилок.
- 1.Поняття "база даних". Системи управління базами даних. Реляційні бази даних.
- 2.Проектування та розробка баз даних. Реалізація проекту за допомогою ms Access.
- 3. Етапи розв'язування задач за допомогою комп'ютера.
- 4.Комп'ютерні програми, їх місце в процесі обробки інформації за допомогою комп'ютера.
- 5. Методи розробки програм.
- 6. Написання програм алгоритмічними мовами високого рівня
- 7.Тестування програм. Основні етапи тестування.
- 8. Робота з пеом в діалоговому режимі.
- 9. Особливості виконання обчислень на евм.(Особливості виконання основних арифметичних операцій в еом)
- 10. Машинний нуль. Похибка округлення.
- 11.Абсолютна і відносна похибка результатів основних арифметичних операцій.
- 13.)Методи пошуку ефективних алгоритмів.
- 14. Загальна характеристика алгоритмічної мови q-Basic
- 15 Загальна характеристика алгоритмічної мовиBorland-Pascal.
- 17. Пролог являє собою спільну мету логічного програмування мову, пов'язаний з штучним інтелектом і комп'ютерної лінгвістики .
- 18.)Основні елементи мов програмування:
- 19.Арифметичні та логічні вирази. Алгоритмічні вирази.
- 20. Структура програми: опис міток, опис констант, опис типу даних та змінних
- 22. Розділ операторів головної програми
- 23. Методи конструювання програм.
- 24. Застосування модулів.
- 25. Складання програм з розгалуженою структурою.
- 26.Використання пакетів програм для написання хімічних формул органічних та неорганічних речовин, а також зображення хімічного посуду ChemWindow.
- 27. Побудова графіків за допомогою Microcal Origin 7.0.
- 28. Графічні редактори Paint та CorelDraw.
- 29.Міжкомп’ютерний зв’язок
- 30. Локальна мережа
- 31.Принцип роботи Internet
- 32.Електронна пошта
- 34.Інформаційні мережі в інтернет.
- 35.Спілкування в Internet
- 36.Призначення та структура експертних систем.Життєвий цикл експертних систем.
- 37.Автоматизовані інформаційні системи.
- 38.Автоматизоване робоче місце.
- 39 .Системи автоматизованого проектування (сапр).
- 41.Взаємозв`язок між сапр і аснд.
- 42.Технологія вирішення задач за допомогою комп'ютера.
- 43.Поняття про математичну хімію, хемометрію і хімічну інформатику.
- 44Основні поняття MathCad-14 та maple 13. Створення та редагування документів.
- 45Побудова виразів. Текстові вставки.
- 46.)Розв’язання лінійних і нелінійних рівнянь
- 47)Методи розв'язання рівнянь за допомогою математичного пакету MathCad-14 та maple 13.
- 48.)Відображення функції однієї змінної у вигляді діаграм і графіків різного типу
- 49Способи відображення декількох функцій на одному графіку.
- 50 Відображення функцій двох змінних у вигляді проекцій тривимірних поверхонь та ліній рівня.
- 52.Вирішення системи лінійних алгебраїчних рівнянь за допомогою математичного пакету MathCad-14 та maple 13.
- 54Диференціювання за допомогою математичного пакету MathCad-14 та maple 13.
- 55Інтегрування за допомогою математичного пакету MathCad-14 та maple 13.