Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Модуль2.docx
Скачиваний:
181
Добавлен:
04.06.2015
Размер:
973.92 Кб
Скачать

Основные стандарты качества по гост 28195-89. Оценка качества программных средств. Общие положения

Дата введения: 01.07.1990 Настоящий стандарт устанавливает общие положения по оценке качества программных средств вычислительной техники (далее— ПС), поставляемых через фонды алгоритмов и программ (ФАП), номенклатуру и применяемость показателей качества ПС. Термины, применяемые в стандарте, и пояснения к ним приведены в приложении 1.

Гост 28806-90. Качество программных средств. Термины и определения

Дата введения: 01.01.1992 Настоящий стандарт устанавливает термины и определения понятий в области качества программных средств.

Термины, установленные настоящим стандартом, обязательны для применения во всех видах документации и литературы по вычислительной технике и программным средствам, входящих в сферу работ по стандартизации и использующих результаты этих работ.

Гост р исо/мэк 9126-93. Оценка программной продукции. Характеристики качества и руководства по их применению

Дата введения: 01.07.1994 Настоящий стандарт определяет шесть характеристик, которые с минимальным дублированием описывают качество программного обеспечения. Данные характеристики образуют основу для дальнейшего уточнения и описания качества программного обеспечения. Руководства описывают использование характеристик качества для оценки качества программного обеспечения.

Тестирование ПО. Существует несколько признаков, по которым принято производить классификацию видов тестирования. Обычно выделяют следующие:

По объекту тестирования:

  • Функциональное тестирование(functional testing)

  • Тестирование производительности(performance testing)

    • Нагрузочное тестирование(load testing)

    • Стресс-тестирование(stress testing)

    • Тестирование стабильности (stability / endurance / soak testing)

  • Юзабилити-тестирование(usability testing)

  • Тестирование интерфейса пользователя(UI testing)

  • Тестирование безопасности(security testing)

  • Тестирование локализации(localization testing)

  • Тестирование совместимости(compatibility testing)

По знанию системы:

  • Тестирование чёрного ящика(black box)

  • Тестирование белого ящика(white box)

  • Тестирование серого ящика (grey box)

По степени автоматизации:

  • Ручное тестирование (manual testing)

  • Автоматизированное тестирование(automated testing)

  • Полуавтоматизированное тестирование (semiautomated testing)

По степени изолированности компонентов:

  • Компонентное (модульное) тестирование(component/unit testing)

  • Интеграционное тестирование(integration testing)

  • Системное тестирование (system/end-to-end testing)

По времени проведения тестирования:

  • Альфа-тестирование(alpha testing)

    • Тестирование при приёмке(smoke testing)

    • Тестирование новой функциональности (new feature testing)

    • Регрессионное тестирование(regression testing)

    • Тестирование при сдаче (acceptance testing)

  • Бета-тестирование(beta testing)

По признаку позитивности сценариев:

  • Позитивное тестирование (positive testing)

  • Негативное тестирование (negative testing)

По степени подготовленности к тестированию:

  • Тестирование по документации (formal testing)

  • Тестирование ad hoc или интуитивное тестирование (ad hoc testing)

Уровни тестирования

  • Модульное тестирование(юнит-тестирование) — тестируется минимально возможный для тестирования компонент, например, отдельный класс или функция. Часто модульное тестирование осуществляетсяразработчикамиПО.

  • Интеграционное тестирование— тестируются интерфейсы между компонентами, подсистемами. При наличии резерва времени на данной стадии тестирование ведётся итерационно, с постепенным подключением последующих подсистем.

  • Системное тестирование— тестируется интегрированная система на её соответствиетребованиям.

    • Альфа-тестирование— имитация реальной работы с системой штатнымиразработчиками, либо реальная работа с системой потенциальными пользователями/заказчиком. Чаще всего альфа-тестирование проводится на ранней стадии разработки продукта, но в некоторых случаях может применяться для законченного продукта в качестве внутреннего приёмочного тестирования. Иногда альфа-тестирование выполняется под отладчиком или с использованием окружения, которое помогает быстро выявлять найденные ошибки. Обнаруженные ошибки могут быть переданы тестировщикам для дополнительного исследования в окружении, подобном тому, в котором будет использоваться ПО.

    • Бета-тестирование— в некоторых случаях выполняется распространение версии с ограничениями (по функциональности или времени работы) для некоторой группы лиц, с тем чтобы убедиться, что продукт содержит достаточно мало ошибок. Иногда бета-тестирование выполняется для того, чтобы получить обратную связь о продукте от его будущих пользователей.

Часто для свободного/открытого ПО стадия альфа-тестированияхарактеризует функциональное наполнение кода, абета-тестирования— стадию исправления ошибок. При этом как правило на каждом этапе разработки промежуточные результаты работы доступны конечным пользователям.