ISO / IEC / IEEE 29119 Программное обеспечение и системная инженерия - Тестирование программного обеспечения [1] - это серия из пяти международных стандартов для тестирования программного обеспечения . Стандарт, впервые разработанный в 2007 году [2] и выпущенный в 2013 году, «определяет словарь, процессы, документацию, методы и модель оценки процесса для тестирования, которая может использоваться в рамках любого жизненного цикла разработки программного обеспечения». [3]
История и изменения
Разработка набора ISO / IEC / IEEE 29119 тестирования программного обеспечения стандартов началась в мае 2007 года на основе существующих стандартов , таких как Институт инженеров электротехники и электроники «ы IEEE 829 (тест документации), и IEEE 1008 (модульное тестирование); и BS 7925-1 (словарь) и -2 (программные компоненты) BSI Group . [2] [4]
Сначала у Международной организации по стандартизации (ISO) не было рабочей группы со значительным опытом тестирования программного обеспечения, поэтому ISO создала WG26, которая к 2011 году была представлена более чем 20 различными странами. [2] Первоначально для стандарта были разработаны четыре раздела: «Концепции и определения» (1), «Процессы тестирования» (2), «Документация по тестированию» (3) и «Методы тестирования» (4). [2] Пятая часть, касающаяся оценки процесса, рассматривалась для добавления, в конечном итоге ставшая стандартом ISO / IEC 33063: 2015, который связан с процессами тестирования 29119-2. [2] [5] Фактическая пятая часть 29119 была опубликована в ноябре 2016 года и касалась концепции тестирования на основе ключевых слов . [6]
По состоянию на июнь 2018 г.[Обновить], в пять частей стандарта не было внесено никаких серьезных изменений. Вот эти части, от самых последних до самых старых:
- ISO / IEC / IEEE 29119-5: 2016, Часть 5: Тестирование на основе ключевых слов, опубликовано в ноябре 2016 г. [6]
- ISO / IEC / IEEE 29119-4: 2015, Часть 4: Методы тестирования, опубликовано в декабре 2015 г. [7]
- ISO / IEC / IEEE 29119-3: 2013, Часть 3: Тестовая документация, опубликовано в сентябре 2013 г. [8]
- ISO / IEC / IEEE 29119-2: 2013, Часть 2: Процессы тестирования, опубликовано в сентябре 2013 г. [9]
- ISO / IEC / IEEE 29119-1: 2013, Часть 1: Понятия и определения, опубликовано в сентябре 2013 г. [1]
Структура и содержание
ISO / IEC / IEEE 29119-1: 2013, Часть 1: Понятия и определения
ISO / IEC / IEEE 29119 Часть 1 облегчает использование других частей стандарта, вводя словарь, на котором основан стандарт, и предоставляет примеры его применения на практике. [4] Часть 1 содержит определения, описание концепций тестирования программного обеспечения и способы применения этих определений и концепций к другим частям стандарта. [1]
ISO / IEC / IEEE 29119-2: 2013, Часть 2: Процессы тестирования
Часть 2 определяет общую модель процесса тестирования для тестирования программного обеспечения, которая предназначена для использования организациями при выполнении тестирования программного обеспечения. Он включает описания процессов тестирования, которые определяют процессы тестирования программного обеспечения на уровне организации, уровне управления тестированием (проекта) и уровнях процесса динамического тестирования (WG26 не смогла достичь консенсуса по включению статического тестирования). [2] [3] [10] Процессы, определенные в этом стандарте, могут использоваться в сочетании с различными моделями жизненного цикла разработки программного обеспечения. [9]
ISO / IEC / IEEE 29119-3: 2013, Часть 3: Тестовая документация
Эта часть посвящена документации по тестированию программного обеспечения и включает шаблоны и примеры документации по тестированию, которые создаются в процессе тестирования. Шаблоны поддерживают три основных уровня процесса тестирования из Части 2, и стандарт также включает сопоставление с другими существующими стандартами. [2] [8]
Документы, определенные в ISO / IEC / IEEE 29119-3, следующие: [2] [4]
- Документация по процессу организационного тестирования:
- - Политика тестирования
- - Стратегия организационного тестирования
- Документация по процессу управления тестированием:
- - План тестирования (включая стратегию тестирования)
- - Статус теста
- - Завершение теста
- Документация по процессу динамического тестирования:
- - Спецификация дизайна испытаний
- - Спецификация тестового случая
- - Спецификация процедуры испытаний
- - Требования к тестовым данным
- - Отчет о готовности тестовых данных
- - Требования к тестовой среде
- - Отчет о готовности тестовой среды
- - Фактические результаты
- - Результат испытаний
- - Журнал выполнения теста
- - Отчет о тестовом инциденте
ISO / IEC / IEEE 29119-4: 2015, Часть 4: Методы тестирования
В Части 4 представлены стандартные определения методов проектирования тестирования программного обеспечения (также известные как методы разработки тестовых примеров или методы тестирования ) и соответствующие меры покрытия, которые могут использоваться во время проектирования и реализации тестов, определенных в Части 2. [7] Методы Части 4: предназначены для поддержки или использования отдельно от Части 2. Стандартные методы проектирования тестов подразделяются на три основные категории: методы проектирования тестов, основанные на спецификациях, структуре и опыте. [2] [11]
Методы проектирования тестов на основе спецификаций
Эти методы основаны на (функциональной) спецификации тестируемой системы . Их также называют методами тестирования черного ящика .
Предлагаемые методы проектирования тестов в этой группе: [2] [11]
- Разделение эквивалентности
- Метод дерева классификации
- Анализ граничных значений
- Тестирование синтаксиса
- Комбинаторные методы разработки тестов
- Тестирование таблицы решений
- Графики причинно-следственных связей
- Тестирование перехода состояний
- Тестирование сценария
- Случайное тестирование
Структурные методы проектирования тестов
Эти методы структурного тестирования основаны на (внутренней) структуре тестируемой системы. Их также называют методами тестирования белого ящика.
Предлагаемые методы проектирования тестов в этой группе: [2] [11]
- Ветвление тестирования
- Проверка решений
- Проверка состояния ветви
- Комбинированное тестирование условий ветвления
- Тестирование покрытия при принятии решения по модифицированным условиям (MCDC)
- Тестирование потока данных
Методы разработки тестов, основанные на опыте
Эти методы исследовательского тестирования основаны на опыте человека-тестировщика.
Предлагаемые методы проектирования тестов в этой группе: [11]
- Ошибка угадывания
ISO / IEC / IEEE 29119-5: 2016, Часть 5: Тестирование на основе ключевых слов
Этот стандарт охватывает тестирование на основе ключевых слов , подход к определению тестов программного обеспечения (обычно автоматизированных), используемых в индустрии тестирования программного обеспечения. [12] Этот стандарт предназначен для пользователей, «которые хотят создавать спецификации тестирования на основе ключевых слов , создавать соответствующие структуры или создавать автоматизацию тестирования на основе ключевых слов». [6]
Полемика
После введения ISO / IEC / IEEE 29119, кульминацией которого стало лето 2014 года, некоторые тестировщики программного обеспечения и связанные с ними организации начали призывать ISO отменить стандарт. [13] [14] [15] [16] [17] [18] [19] Известные организации, протестовавшие против стандарта, включая Ассоциацию тестирования программного обеспечения [18] и Международное общество тестирования программного обеспечения [20] Некоторые причины для возражений к стандарту включены:
- отсутствие истинного консенсуса по содержанию - как того требует ИСО / МЭК - среди профессиональных тестировщиков [13] [20] [15] [16]
- сосредоточение внимания на документации отвлечет от фактического процесса тестирования программного обеспечения [13] [14] [18]
- ISO 29119 несовместим с тем, как люди работают над задачами, требующими познания, и в то же время усиливает то, как они цепляются за бесполезные практики при выполнении сложных, стрессовых организаций [19].
- в стандарте не учитывается соответствующая работа в других местах по балансу правил и принципов в нормах и стандартах; в стандарте неясны принципы, которые должны регулировать тестирование, но в нем слишком много предписаний в отношении деталей, что приводит к путанице в средствах и целях [19]
- стандарт эффективно исключает контекстное тестирование [16] [17]
- в стандартизации тестирования программного обеспечения в целом нет необходимости [15] [18]
- стандарт имеет политическую и денежную коннотацию и является слишком предписывающим, что не приносит пользы отрасли [13] [17] [18]
Д-р Стюарт Рид, организатор WG26, ответил на некоторые из этих и других противоположных точек зрения в сентябре 2014 года [21], хотя неясно, были ли предприняты какие-либо дальнейшие действия WG26 из-за жалоб тестировщиков программного обеспечения.
Рекомендации
- ^ a b c «ISO / IEC / IEEE 29119-1: 2013» . Каталог стандартов . Международная Организация Стандартизации. Сентябрь 2013 . Проверено 24 июня 2018 .
- ^ Б с д е е г ч я J K Рид, С. (2012). «Новый стандарт тестирования программного обеспечения». In Dale, C .; Андерсон, Т. (ред.). Достижение систем безопасности: Труды Двадцатый безопасности критически важных систем Симпозиума, Бристоль, Великобритания, 7-9 февраля 2012 . Springer Science & Business Media. С. 237–56. ISBN 9781447124948.
- ^ а б Shoemaker, D .; Сиглер, К. (2014). «Глава 6: Группа процессов внедрения программного обеспечения». Кибербезопасность: разработка организации безопасных информационных технологий . Cengage Learning. С. 117–34. ISBN 9781305443471.
- ^ а б в Pröll, R .; Бауэр, Б. (2018). «На пути к последовательной и строго модельной интерпретации ISO / IEC / IEEE 29119 для деятельности по раннему тестированию» . Труды 6-й Международной конференции по модельно-ориентированной инженерии и разработке программного обеспечения (MODELSWARD 2018) : 699–706. DOI : 10.5220 / 0006749606990706 .
- ^ «ISO / IEC 33063: 2015» . Каталог стандартов . Международная Организация Стандартизации. Август 2015 . Проверено 24 июня 2018 .
- ^ а б в «ISO / IEC / IEEE 29119-5: 2016» . Каталог стандартов . Международная Организация Стандартизации. Ноября 2016 . Проверено 24 июня 2018 .
- ^ а б «ISO / IEC / IEEE 29119-4: 2015» . Каталог стандартов . Международная Организация Стандартизации. Декабрь 2015 . Проверено 24 июня 2018 .
- ^ а б «ISO / IEC / IEEE 29119-3: 2013» . Каталог стандартов . Международная Организация Стандартизации. Сентябрь 2013 . Проверено 24 июня 2018 .
- ^ а б «ISO / IEC / IEEE 29119-2: 2013» . Каталог стандартов . Международная Организация Стандартизации. Сентябрь 2013 . Проверено 24 июня 2018 .
- ^ Kasurinen, J .; Runeson, P .; Riungu, L .; и другие. (2011). «Структура самооценки для поиска целей улучшения с помощью стандарта тестирования ISO / IEC 29119». В Конноре, RV; Pries-Heje, J .; Месснарц Р. (ред.). Улучшение процессов систем, программного обеспечения и услуг: 18-я Европейская конференция, EuroSPI 2011, Роскилле, Дания, 27-29 июня 2011 г., Материалы . Springer Science & Business Media. С. 25–36. ISBN 9783642222054.
- ^ а б в г «Содержание ISO / IEC / IEEE 29119-4: 2015-12 (E)» . Normenausschuss Informationstechnik und Anwendungen (NIA) . Deutsches Institut für Normung e. В . Проверено 24 июня 2018 .
- ^ Faught, DR (5 ноября 2004 г.). «Тестирование на основе ключевых слов» . StickyMinds . Techwell Corp . Проверено 24 июня 2018 .
- ^ а б в г Криль, П. (22 августа 2014 г.). «Тестировщики программного обеспечения не согласны с предложением стандарта ISO 29119» . InfoWorld . IDG Communications, Inc . Проверено 24 июня 2018 .
- ^ а б Демман, Дж. (9 сентября 2014 г.). «Петиция тестировщиков программного обеспечения о прекращении действия стандарта ISO 29119» . TechTarget SearchПрограммное обеспечениеКачество . TechTarget, Inc . Проверено 24 июня 2018 .
- ^ а б в McCowatt, I. (24 августа 2014 г.). «СТОП 29119» . Изучение неопределенности: блог о тестировании программного обеспечения . Проверено 24 июня 2018 .
- ^ а б в Бах, Дж. (25 августа 2014 г.). «Как не стандартизировать тестирование (ISO 29119)» . Блог Satisfice . Satisfice, Inc . Проверено 24 июня 2018 .
- ^ а б в Канер, К. (28 августа 2014 г.). «Пожалуйста, подпишите петицию о прекращении действия стандарта ISO 29119» . context-driven-testing.com . Проверено 24 июня 2018 .
- ^ а б в г д «Обсуждение ISO29119» . Ассоциация тестирования программного обеспечения. 5 сентября 2014 . Проверено 24 июня 2018 .
- ^ а б в Кристи, Дж. (28 августа 2015 г.). «Почему ISO 29119 является стандартом качества с ошибками» . Журнал Better Software . Проверено 23 июля 2018 года .
- ^ а б «Петиция против ISO 29119» . Международное общество тестирования программного обеспечения. 19 августа 2014. Архивировано из оригинала 8 февраля 2017 года . Проверено 24 июня 2018 .
- ^ Marnane, T .; Рид, С. (10 сентября 2014 г.). «Ответ на петицию Stop 29119» . SoftwareTestingStandard.org . Проверено 24 июня 2018 .