[{"data":1,"prerenderedAt":73},["ShallowReactive",2],{"wiki-test-design-decision-table-testing-ru":3},{"meta":4,"html":8,"headings":9,"words":72},{"title":5,"description":6,"published":7,"updated":7,"sourceUpdated":7},"Таблицы решений","Тестирование по таблице решений: условия, действия и правила, полная и сокращённая таблица, невыполнимые сочетания, покрытие таблицы и сценарии Gherkin.","2026-11-03","\u003Cp>\u003Cstrong>Тестирование по таблице решений\u003C/strong> (decision table testing) - техника тестирования методом чёрного ящика, при которой \u003Cspan class=\"wiki-term\" tabindex=\"0\" data-wiki-term=\"test-case\">тест-кейсы\u003C/span> строятся по таблице решений: таблице, где перечислены условия бизнес-правила, действия, которые из них следуют, и сочетания значений условий, ведущие к каждому набору действий. Каждое сочетание - правило таблицы, и каждое правило, которое может встретиться на практике, становится хотя бы одним тест-кейсом.\u003C/p>\n\u003Cp>Технику определяют международный стандарт ISO/IEC/IEEE 29119-4:2021, Software testing, Part 4: Test techniques (раздел 5.2.6, покрытие - в разделе 6.2.6), и силлабус ISTQB Certified Tester Foundation Level версии 4.0.1 (раздел 4.2.3). Тот же стандарт описывает построение графа причин и следствий (cause-effect graphing, раздел 5.2.7) - смежную технику, описанную в книге Glenford Myers The Art of Software Testing, впервые изданной в 1979 году. Обе техники работают с правилами решений: ISO/IEC/IEEE 29119-4 определяет таблицу решений как табличное представление правил решений, которые связывают причины, выраженные булевыми условиями, со следствиями.\u003C/p>\n\u003Ch2 id=\"какую-задачу-решают-таблицы-решений\" class=\"wiki-heading\">Какую задачу решают таблицы решений\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"какую-задачу-решают-таблицы-решений\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cp>Бизнес-правила записывают предложениями: «Участники программы получают скидку. Заказы от 100.00 доставляются бесплатно. Участники со статусом Gold всегда получают бесплатную доставку». Каждое предложение понятно само по себе. Вопросы возникают между ними: получает ли участник Gold обе скидки, действует ли бесплатная доставка для гостя, что происходит, когда два предложения противоречат друг другу.\u003C/p>\n\u003Cp>Тесты, написанные прямо по такому тексту, проверяют случаи, которые текст называет явно. Сочетания, которых в тексте нет, остаются непроверенными, и именно в них реализация и ожидание часто расходятся. Таблица решений перечисляет все сочетания условий, поэтому каждое из них получает явный результат или помечается как невозможное. Силлабус ISTQB называет два результата техники: она систематически выявляет все сочетания условий и помогает найти пробелы и противоречия в требованиях.\u003C/p>\n\u003Ch2 id=\"устройство-таблицы-решений\" class=\"wiki-heading\">Устройство таблицы решений\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"устройство-таблицы-решений\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Ch3 id=\"условия-и-действия\" class=\"wiki-heading\">Условия и действия\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"условия-и-действия\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h3>\n\u003Cp>В таблице решений строки двух видов. \u003Cstrong>Условия\u003C/strong> (conditions) - входы правила: факты о данных или ситуации, которые определяют результат, например «покупатель - зарегистрированный участник» или «сумма заказа 100.00 или больше». \u003Cstrong>Действия\u003C/strong> (actions) - выходы: что делает система, например «применить скидку 10 процентов» или «доставить бесплатно».\u003C/p>\n\u003Ch3 id=\"правила\" class=\"wiki-heading\">Правила\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"правила\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h3>\n\u003Cp>Каждый столбец таблицы - \u003Cstrong>правило решения\u003C/strong> (decision rule): одно сочетание значений условий и действия, которые из него следуют. ISO/IEC/IEEE 29119-4 описывает правило решения как сочетание условий и действий, которое даёт определённый результат. Столбец читается сверху вниз: «если C1 истинно, C2 ложно и C3 истинно, выполнить A2 и A3».\u003C/p>\n\u003Ch3 id=\"обозначения\" class=\"wiki-heading\">Обозначения\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"обозначения\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h3>\n\u003Cp>Силлабус ISTQB v4.0.1 использует в ячейках таблицы следующие обозначения.\u003C/p>\n\u003Cdiv class=\"wiki-table wiki-table--cols-2\">\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Обозначение\u003C/th>\n\u003Cth>Значение\u003C/th>\n\u003C/tr>\n\u003C/thead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>T\u003C/td>\n\u003Ctd>Условие выполнено\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>F\u003C/td>\n\u003Ctd>Условие не выполнено\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>-\u003C/td>\n\u003Ctd>Значение условия не влияет на результат\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>N/A\u003C/td>\n\u003Ctd>Условие невыполнимо для этого правила\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>X\u003C/td>\n\u003Ctd>Действие выполняется\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Пусто\u003C/td>\n\u003Ctd>Действие не выполняется\u003C/td>\n\u003C/tr>\n\u003C/tbody>\n\u003C/table>\u003C/div>\n\u003Ch3 id=\"таблицы-с-ограниченными-и-расширенными-записями\" class=\"wiki-heading\">Таблицы с ограниченными и расширенными записями\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"таблицы-с-ограниченными-и-расширенными-записями\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h3>\n\u003Cp>В \u003Cstrong>таблице решений с ограниченными записями\u003C/strong> (limited-entry decision table) все значения условий и действий булевы: истина или ложь, кроме безразличных и невыполнимых. В \u003Cstrong>таблице решений с расширенными записями\u003C/strong> (extended-entry decision table) часть условий или действий принимает больше значений, например диапазоны чисел, \u003Cspan class=\"wiki-term\" tabindex=\"0\" data-wiki-term=\"equivalence-partition\">классы эквивалентности\u003C/span> или отдельные значения вроде «гость, участник, участник Gold».\u003C/p>\n\u003Cp>Таблица с расширенными записями короче: одна строка заменяет несколько булевых условий. Её значениями часто служат классы эквивалентности, и выбор таких классов описан в статье \u003Ca href=\"/ru/wiki/test-design/equivalence-partitioning-and-boundary-values\" class=\"wiki-link wiki-link--article\">Классы эквивалентности и граничные значения\u003C/a>.\u003C/p>\n\u003Ch2 id=\"от-бизнес-правила-к-полной-таблице\" class=\"wiki-heading\">От бизнес-правила к полной таблице\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"от-бизнес-правила-к-полной-таблице\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cp>Правило интернет-магазина в примере:\u003C/p>\n\u003Cul>\n\u003Cli>зарегистрированные участники получают скидку 5 процентов, участники со статусом Gold - 10 процентов;\u003C/li>\n\u003Cli>заказы на сумму 100.00 или больше доставляются бесплатно;\u003C/li>\n\u003Cli>участники со статусом Gold всегда получают бесплатную доставку;\u003C/li>\n\u003Cli>статус Gold может быть только у зарегистрированного участника.\u003C/li>\n\u003C/ul>\n\u003Cp>У правила три булевых условия и три действия. \u003Cstrong>Полная таблица решений\u003C/strong> (full decision table) содержит все сочетания значений условий. Для n булевых условий это 2 в степени n столбцов, здесь 8. Для таблицы с расширенными записями число столбцов равно произведению чисел значений всех условий.\u003C/p>\n\u003Cp>Полная таблица примера приведена ниже.\u003C/p>\n\u003Cdiv class=\"wiki-table wiki-table--cols-6\">\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>\u003C/th>\n\u003Cth>1\u003C/th>\n\u003Cth>2\u003C/th>\n\u003Cth>3\u003C/th>\n\u003Cth>4\u003C/th>\n\u003Cth>5\u003C/th>\n\u003Cth>6\u003C/th>\n\u003Cth>7\u003C/th>\n\u003Cth>8\u003C/th>\n\u003C/tr>\n\u003C/thead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>C1 Зарегистрированный участник\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>C2 Статус Gold\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>N/A\u003C/td>\n\u003Ctd>N/A\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>C3 Сумма 100.00 или больше\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>A1 Скидка 10 процентов\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>A2 Скидка 5 процентов\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>A3 Бесплатная доставка\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>\u003C/td>\n\u003C/tr>\n\u003C/tbody>\n\u003C/table>\u003C/div>\n\u003Cp>Столбцы 1-4 описывают участников, столбцы 7 и 8 - гостей. Столбцы 5 и 6 сочетают «не участник» и «статус Gold», что правило исключает; это отмечает обозначение N/A в строке C2.\u003C/p>\n\u003Ch2 id=\"невозможные-сочетания\" class=\"wiki-heading\">Невозможные сочетания\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"невозможные-сочетания\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cp>Столбцы 5 и 6 - \u003Cstrong>невыполнимые сочетания\u003C/strong> (infeasible combinations): сочетания значений условий, которые не могут возникнуть. Они появляются всякий раз, когда условия зависят друг от друга. Типичные источники - взаимоисключающие условия («возраст меньше 18» и «возраст 65 или больше»), условия, одно из которых следует из другого (статус Gold требует участия в программе), и условия на одно и то же значение с разными порогами.\u003C/p>\n\u003Cp>Силлабус ISTQB описывает удаление невыполнимых столбцов как упрощение полной таблицы. В примере упрощённая таблица содержит 6 столбцов. Невыполнимость сочетания - утверждение о системе, а не только о правиле. Если импорт или API может создать запись гостя со статусом Gold, сочетание возможно, и для него в таблице нужно правило.\u003C/p>\n\u003Cp>Таблица с расширенными записями может исключить такие сочетания по построению. Одно условие «тип покупателя: гость, участник, участник Gold» заменяет C1 и C2, и в таблице 3 на 2, то есть 6 столбцов, все выполнимые.\u003C/p>\n\u003Ch2 id=\"покрытие-таблицы-решений\" class=\"wiki-heading\">Покрытие таблицы решений\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"покрытие-таблицы-решений\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cp>При тестировании по таблице решений элементы покрытия - столбцы с выполнимыми сочетаниями условий. \u003Cstrong>Покрытие таблицы решений\u003C/strong> (decision table coverage) в определении силлабуса ISTQB v4.0.1 - число проверенных столбцов, делённое на общее число выполнимых столбцов, в процентах. Для покрытия 100 процентов нужны тест-кейсы, проверяющие все такие столбцы.\u003C/p>\n\u003Cp>В примере выполнимы столбцы 1, 2, 3, 4, 7 и 8. Тест-кейсы для столбцов 1, 3, 4, 7 и 8 проверяют 5 из 6 выполнимых столбцов, что даёт 83 процента. Столбец 2, участник Gold с заказом меньше 100.00, остаётся непроверенным.\u003C/p>\n\u003Cp>Мера зависит от того, какая таблица считается. Те же пять тест-кейсов дают 100 процентов для сокращённой таблицы, описанной ниже, потому что в ней столбцы 1 и 2 - один столбец. Поэтому значение покрытия таблицы решений приводится вместе с таблицей, к которой оно относится.\u003C/p>\n\u003Ch2 id=\"сокращение-таблицы\" class=\"wiki-heading\">Сокращение таблицы\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"сокращение-таблицы\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Ch3 id=\"безразличные-значения\" class=\"wiki-heading\">Безразличные значения\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"безразличные-значения\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h3>\n\u003Cp>Число столбцов полной таблицы растёт экспоненциально с числом условий: 10 булевых условий дают 1024 столбца. Силлабус ISTQB называет два способа его уменьшить: минимизированную таблицу решений и выбор на основе рисков.\u003C/p>\n\u003Cp>Таблицу минимизируют, объединяя столбцы, в которых часть условий не влияет на результат. В примере у столбцов 1 и 2 одинаковые действия, а различаются они только условием C3: для участника Gold сумма заказа не важна. Их объединяют в один столбец с обозначением «-» в строке C3. В сокращённой таблице пять столбцов.\u003C/p>\n\u003Cdiv class=\"wiki-table wiki-table--cols-6\">\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>\u003C/th>\n\u003Cth>R1\u003C/th>\n\u003Cth>R2\u003C/th>\n\u003Cth>R3\u003C/th>\n\u003Cth>R4\u003C/th>\n\u003Cth>R5\u003C/th>\n\u003C/tr>\n\u003C/thead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>C1 Зарегистрированный участник\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>C2 Статус Gold\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>C3 Сумма 100.00 или больше\u003C/td>\n\u003Ctd>-\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003Ctd>T\u003C/td>\n\u003Ctd>F\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>A1 Скидка 10 процентов\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>A2 Скидка 5 процентов\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>A3 Бесплатная доставка\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>\u003C/td>\n\u003Ctd>X\u003C/td>\n\u003Ctd>\u003C/td>\n\u003C/tr>\n\u003C/tbody>\n\u003C/table>\u003C/div>\n\u003Cp>Остальные столбцы объединить нельзя: каждая пара различается хотя бы одним действием или больше чем одним условием. Алгоритмы минимизации лежат за пределами силлабуса Foundation Level.\u003C/p>\n\u003Ch3 id=\"риски-сокращения\" class=\"wiki-heading\">Риски сокращения\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"риски-сокращения\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h3>\n\u003Cp>Безразличное значение - утверждение, что условие не влияет на результат. Тест-кейс для объединённого столбца использует одно значение этого условия, а другое остаётся непроверенным. Если реализация даёт участнику Gold бесплатную доставку только от 100.00, тест-кейс для R1 с заказом на 150.00 проходит. \u003Cspan class=\"wiki-term\" tabindex=\"0\" data-wiki-term=\"defect\">Дефект\u003C/span> обнаруживает только заказ меньше 100.00, то есть столбец 2 полной таблицы.\u003C/p>\n\u003Cp>Поэтому сокращение обменивает покрытие сочетаний на меньшее число тест-кейсов. Риск ограничивают три приёма:\u003C/p>\n\u003Cul>\n\u003Cli>\u003Cstrong>Полная таблица как эталон.\u003C/strong> Полная или упрощённая таблица сохраняется, и покрытие приводится и для неё, и для сокращённой.\u003C/li>\n\u003Cli>\u003Cstrong>Оба значения для правил с высоким риском.\u003C/strong> Объединённый столбец правила с высоким риском проверяется с каждым значением безразличного условия.\u003C/li>\n\u003Cli>\u003Cstrong>Пересмотр при изменении.\u003C/strong> При изменении требования объединённые столбцы снова разворачиваются: условие, которое было безразличным, может стать значимым.\u003C/li>\n\u003C/ul>\n\u003Cp>Столбцы сокращённой таблицы не должны пересекаться. Если одно сочетание значений условий подходит к двум столбцам с разными действиями, таблица, а обычно и требование за ней, содержит противоречие.\u003C/p>\n\u003Ch2 id=\"правила-названные-по-результату\" class=\"wiki-heading\">Правила, названные по результату\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"правила-названные-по-результату\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cp>Номер столбца ничего не говорит о содержании правила. Название, которое называет результат, делает таблицу читаемой и даёт каждому тест-кейсу заголовок, который можно сверить с требованием. Названия правил сокращённой таблицы в примере:\u003C/p>\n\u003Cdiv class=\"wiki-table wiki-table--cols-2\">\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Правило\u003C/th>\n\u003Cth>Название\u003C/th>\n\u003C/tr>\n\u003C/thead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>R1\u003C/td>\n\u003Ctd>Gold: 10 процентов, бесплатная доставка\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>R2\u003C/td>\n\u003Ctd>Участник, 100.00 или больше: 5 процентов, бесплатная доставка\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>R3\u003C/td>\n\u003Ctd>Участник, меньше 100.00: 5 процентов, платная доставка\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>R4\u003C/td>\n\u003Ctd>Гость, 100.00 или больше: без скидки, бесплатная доставка\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>R5\u003C/td>\n\u003Ctd>Гость, меньше 100.00: без скидки, платная доставка\u003C/td>\n\u003C/tr>\n\u003C/tbody>\n\u003C/table>\u003C/div>\n\u003Cp>Название правила становится названием тест-кейса. Непройденный тест-кейс тогда указывает на бизнес-правило, а не на номер столбца. Связи таких тест-кейсов с требованием описаны в статье \u003Ca href=\"/ru/wiki/test-management/requirements-traceability\" class=\"wiki-link wiki-link--article\">Трассируемость и покрытие требований\u003C/a>.\u003C/p>\n\u003Ch2 id=\"тест-кейсы-по-таблице\" class=\"wiki-heading\">Тест-кейсы по таблице\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"тест-кейсы-по-таблице\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cp>Каждый столбец становится хотя бы одним тест-кейсом. Значения условий становятся \u003Cspan class=\"wiki-term\" tabindex=\"0\" data-wiki-term=\"precondition\">предусловиями\u003C/span> и входными данными, значения действий - \u003Cspan class=\"wiki-term\" tabindex=\"0\" data-wiki-term=\"expected-result\">ожидаемыми результатами\u003C/span>. Конкретные значения берутся из классов каждого условия:\u003C/p>\n\u003Cdiv class=\"wiki-table wiki-table--cols-5\">\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Правило\u003C/th>\n\u003Cth>Покупатель\u003C/th>\n\u003Cth>Сумма заказа\u003C/th>\n\u003Cth>Ожидаемая скидка\u003C/th>\n\u003Cth>Ожидаемая доставка\u003C/th>\n\u003C/tr>\n\u003C/thead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>R1\u003C/td>\n\u003Ctd>Участник Gold\u003C/td>\n\u003Ctd>40.00\u003C/td>\n\u003Ctd>10 процентов\u003C/td>\n\u003Ctd>Бесплатная\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>R2\u003C/td>\n\u003Ctd>Участник\u003C/td>\n\u003Ctd>100.00\u003C/td>\n\u003Ctd>5 процентов\u003C/td>\n\u003Ctd>Бесплатная\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>R3\u003C/td>\n\u003Ctd>Участник\u003C/td>\n\u003Ctd>99.99\u003C/td>\n\u003Ctd>5 процентов\u003C/td>\n\u003Ctd>Платная\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>R4\u003C/td>\n\u003Ctd>Гость\u003C/td>\n\u003Ctd>100.00\u003C/td>\n\u003Ctd>Нет\u003C/td>\n\u003Ctd>Бесплатная\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>R5\u003C/td>\n\u003Ctd>Гость\u003C/td>\n\u003Ctd>99.99\u003C/td>\n\u003Ctd>Нет\u003C/td>\n\u003Ctd>Платная\u003C/td>\n\u003C/tr>\n\u003C/tbody>\n\u003C/table>\u003C/div>\n\u003Cp>C3 - условие на упорядоченное значение, поэтому его значения берутся на границе: 100.00 для «истины» и 99.99 для «лжи». Таблица и \u003Cspan class=\"wiki-term\" tabindex=\"0\" data-wiki-term=\"boundary-value-analysis\">анализ граничных значений\u003C/span> вместе проверяют и сочетания, и край порога. Для R1 сумма 40.00 выбрана ниже порога - тот случай, на котором сказался бы дефект в безразличном условии.\u003C/p>\n\u003Ch2 id=\"сценарии-gherkin-по-таблице\" class=\"wiki-heading\">Сценарии Gherkin по таблице\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"сценарии-gherkin-по-таблице\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cp>У таблицы решений есть прямой аналог в Gherkin, языке спецификаций Cucumber. \u003Ccode>Scenario Outline\u003C/code> (синоним \u003Ccode>Scenario Template\u003C/code>) - шаблон шагов с параметрами в угловых скобках. Он содержит один или несколько разделов \u003Ccode>Examples\u003C/code> (синоним \u003Ccode>Scenarios\u003C/code>), и шаблон выполняется по разу для каждой строки таблицы примеров, кроме заголовка. Необязательное ключевое слово \u003Ccode>Rule\u003C/code>, которое есть в Gherkin с версии 6, представляет одно бизнес-правило.\u003C/p>\n\u003Cp>Соответствие прямое. Бизнес-правило становится \u003Ccode>Rule\u003C/code>. Условия становятся шагами \u003Ccode>Given\u003C/code>, действия - шагами \u003Ccode>Then\u003C/code>, а каждый столбец таблицы решений - строкой \u003Ccode>Examples\u003C/code>. Столбец с названием правила заполняет заголовок каждого сценария: компилятор Gherkin подставляет параметры не только в шаги шаблона, но и в его название.\u003C/p>\n\u003Cdiv class=\"wiki-code\" data-language=\"gherkin\">\u003Cdiv class=\"wiki-code__header\">\u003Cspan class=\"wiki-code__language\">gherkin\u003C/span>\u003Cbutton type=\"button\" class=\"wiki-code__copy\" data-wiki-copy data-copied-label=\"Скопировано\">\u003Csvg class=\"wiki-code__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M216,28H88A12,12,0,0,0,76,40V76H40A12,12,0,0,0,28,88V216a12,12,0,0,0,12,12H168a12,12,0,0,0,12-12V180h36a12,12,0,0,0,12-12V40A12,12,0,0,0,216,28ZM156,204H52V100H156Zm48-48H180V88a12,12,0,0,0-12-12H100V52H204Z\"/>\u003C/svg>\u003Csvg class=\"wiki-code__icon wiki-code__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003Cspan class=\"wiki-code__label\">Копировать\u003C/span>\u003Cspan class=\"wiki-code__label wiki-code__label--done\">Скопировано\u003C/span>\u003C/button>\u003C/div>\u003Cpre>\u003Ccode>Feature: Order discount and delivery\n\n  Rule: Members get 5 percent and Gold members 10 percent; orders from 100.00 and Gold members get free delivery\n\n    Scenario Outline: &lt;rule&gt;\n      Given a customer of type &quot;&lt;customer&gt;&quot;\n      And an order with the total &lt;total&gt;\n      When the customer opens the checkout\n      Then the discount is &lt;discount&gt; percent\n      And the delivery is &lt;delivery&gt;\n\n      Examples:\n        | rule                                      | customer | total  | discount | delivery |\n        | Gold: 10 percent, free delivery           | gold     | 40.00  | 10       | free     |\n        | Member, 100.00 or more: 5 percent, free   | member   | 100.00 | 5        | free     |\n        | Member, below 100.00: 5 percent, paid     | member   | 99.99  | 5        | paid     |\n        | Guest, 100.00 or more: no discount, free  | guest    | 100.00 | 0        | free     |\n        | Guest, below 100.00: no discount, paid    | guest    | 99.99  | 0        | paid     |\u003C/code>\u003C/pre>\u003C/div>\n\u003Cp>Файл даёт пять сценариев с названиями правил в заголовках. Невыполнимые столбцы строк не дают. Объединённый столбец даёт одну строку, и к нему относится тот же риск, что описан выше: вторая строка с другим значением безразличного условия восстанавливает полное сочетание.\u003C/p>\n\u003Ch2 id=\"таблицы-решений-и-граф-причин-и-следствий\" class=\"wiki-heading\">Таблицы решений и граф причин и следствий\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"таблицы-решений-и-граф-причин-и-следствий\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cp>\u003Cstrong>Построение графа причин и следствий\u003C/strong> (cause-effect graphing) - техника тестирования методом чёрного ящика, при которой тест-кейсы строятся по графу причин и следствий. ISO/IEC/IEEE 29119-4 определяет граф как графическое представление правил решений, которые связывают причины, выраженные булевыми условиями, со следствиями, выраженными булевыми выражениями. Причины и следствия - узлы графа; их соединяют логические операции, а ограничения между причинами фиксируют, что некоторые сочетания невозможны.\u003C/p>\n\u003Cp>Технику описал Myers в The Art of Software Testing; в указателе третьего издания (2011) перечислены символы графа и символы ограничений, включая ограничение исключения (exclusive constraint). По данным обзора Badhera, Purohit и Taruna 2012 года, графы причин и следствий восходят к отчёту IBM 1973 года, автор которого W. R. Elmendorf, а Myers дал процедуру построения таблицы решений по графу.\u003C/p>\n\u003Cp>Граф и таблица описывают одни и те же правила решений. Граф показывает, как причины сочетаются через промежуточные узлы и где действуют ограничения, - это помогает, когда правило большое. Таблица перечисляет получившиеся сочетания по столбцам, и тест-кейсы берутся из неё. ISO/IEC/IEEE 29119-4 сохраняет обе техники как отдельные, с отдельными мерами покрытия.\u003C/p>\n\u003Ch2 id=\"ограничения-техники\" class=\"wiki-heading\">Ограничения техники\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"ограничения-техники\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cp>Таблица решений описывает одно решение в один момент. Вне её области несколько случаев:\u003C/p>\n\u003Cul>\n\u003Cli>\u003Cstrong>Много условий.\u003C/strong> Число столбцов удваивается с каждым булевым условием. Уже при нескольких условиях нужны сокращение или выбор столбцов по риску, и покрытие сочетаний соответственно уменьшается.\u003C/li>\n\u003Cli>\u003Cstrong>Много независимых параметров.\u003C/strong> Когда параметры не образуют одного правила, число сочетаний сокращает \u003Ca href=\"/ru/wiki/test-design/pairwise-testing\" class=\"wiki-link wiki-link--article\">попарное тестирование\u003C/a>.\u003C/li>\n\u003Cli>\u003Cstrong>Порядок и история.\u003C/strong> В таблице нет понятия последовательности событий. Поведение, которое зависит от предыдущего состояния, описывает \u003Ca href=\"/ru/wiki/test-design/state-transition-testing\" class=\"wiki-link wiki-link--article\">тестирование переходов состояний\u003C/a>.\u003C/li>\n\u003Cli>\u003Cstrong>Значения внутри условия.\u003C/strong> Таблица проверяет сочетания, а не значения внутри каждого условия; их края даёт анализ \u003Cspan class=\"wiki-term\" tabindex=\"0\" data-wiki-term=\"boundary-value\">граничных значений\u003C/span>.\u003C/li>\n\u003C/ul>\n\u003Ch2 id=\"таблицы-решений-и-смежные-техники\" class=\"wiki-heading\">Таблицы решений и смежные техники\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"таблицы-решений-и-смежные-техники\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cp>В таблице тестирование по таблице решений сравнивается с техниками, с которыми его чаще всего сочетают или путают.\u003C/p>\n\u003Cdiv class=\"wiki-table wiki-table--cols-3\">\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Техника\u003C/th>\n\u003Cth>Тестовая модель\u003C/th>\n\u003Cth>Элементы покрытия\u003C/th>\n\u003C/tr>\n\u003C/thead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>Разбиение на классы эквивалентности\u003C/td>\n\u003Ctd>Классы одного элемента данных\u003C/td>\n\u003Ctd>Классы\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Тестирование по таблице решений\u003C/td>\n\u003Ctd>Условия, действия, правила\u003C/td>\n\u003Ctd>Выполнимые столбцы\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Построение графа причин и следствий\u003C/td>\n\u003Ctd>Граф причин, следствий и ограничений\u003C/td>\n\u003Ctd>Правила решений графа\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Попарное тестирование\u003C/td>\n\u003Ctd>Независимые параметры и значения\u003C/td>\n\u003Ctd>Пары значений\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Тестирование переходов состояний\u003C/td>\n\u003Ctd>Состояния, события, переходы\u003C/td>\n\u003Ctd>Состояния или переходы\u003C/td>\n\u003C/tr>\n\u003C/tbody>\n\u003C/table>\u003C/div>\n\u003Cp>\u003Cspan class=\"wiki-term\" tabindex=\"0\" data-wiki-term=\"equivalence-partitioning\">Разбиение на классы эквивалентности\u003C/span> даёт значения условий, а таблица решений их сочетает. Построение графа причин и следствий приходит к тем же правилам решений через граф, а не через список.\u003C/p>\n\u003Cp>\u003Cspan class=\"wiki-term\" tabindex=\"0\" data-wiki-term=\"pairwise-testing\">Попарное тестирование\u003C/span> и таблицы решений отвечают на разные вопросы. Таблица решений исходит из того, что результат зависит от известного сочетания условий, и покрывает все такие сочетания. Попарное тестирование исходит из того, что параметры в основном независимы, и покрывает только каждую пару значений.\u003C/p>\n\u003Ch2 id=\"термины\" class=\"wiki-heading\">Термины\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"термины\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cdiv class=\"wiki-table wiki-table--cols-2\">\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Термин\u003C/th>\n\u003Cth>Значение\u003C/th>\n\u003C/tr>\n\u003C/thead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>Тестирование по таблице решений (decision table testing)\u003C/td>\n\u003Ctd>Техника тестирования методом чёрного ящика, при которой тест-кейсы строятся по выполнимым правилам таблицы решений\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Таблица решений (decision table)\u003C/td>\n\u003Ctd>Таблица условий, действий и правил, которая показывает, какие действия следуют из каждого сочетания условий\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Правило решения (decision rule)\u003C/td>\n\u003Ctd>Столбец таблицы решений: одно сочетание значений условий и действия, которые из него следуют\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Таблица решений с ограниченными записями (limited-entry decision table)\u003C/td>\n\u003Ctd>Таблица решений, в которой все условия и действия принимают булевы значения\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Таблица решений с расширенными записями (extended-entry decision table)\u003C/td>\n\u003Ctd>Таблица решений, в которой часть условий или действий принимает больше двух значений, например классы\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Полная таблица решений (full decision table)\u003C/td>\n\u003Ctd>Таблица решений, которая содержит все сочетания значений условий\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Невыполнимое сочетание (infeasible combination)\u003C/td>\n\u003Ctd>Сочетание значений условий, которое не может возникнуть в системе\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Покрытие таблицы решений (decision table coverage)\u003C/td>\n\u003Ctd>Число проверенных выполнимых столбцов, делённое на общее число выполнимых столбцов, в процентах\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Минимизированная таблица решений (minimized decision table)\u003C/td>\n\u003Ctd>Таблица решений, в которой столбцы, результат которых не зависит от части условий, объединены с помощью безразличных значений\u003C/td>\n\u003C/tr>\n\u003Ctr>\n\u003Ctd>Построение графа причин и следствий (cause-effect graphing)\u003C/td>\n\u003Ctd>Техника тестирования методом чёрного ящика, при которой тест-кейсы строятся по графу причин, следствий и ограничений между ними\u003C/td>\n\u003C/tr>\n\u003C/tbody>\n\u003C/table>\u003C/div>\n\u003Ch2 id=\"источники\" class=\"wiki-heading\">Источники\u003Cbutton type=\"button\" class=\"wiki-heading__anchor\" data-wiki-anchor=\"источники\" aria-label=\"Скопировать ссылку на раздел\" data-copied-label=\"Ссылка на раздел скопирована\">\u003Csvg class=\"wiki-heading__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M117.18,188.74a12,12,0,0,1,0,17l-5.12,5.12A58.26,58.26,0,0,1,70.6,228h0A58.62,58.62,0,0,1,29.14,127.92L63.89,93.17a58.64,58.64,0,0,1,98.56,28.11,12,12,0,1,1-23.37,5.44,34.65,34.65,0,0,0-58.22-16.58L46.11,144.89A34.62,34.62,0,0,0,70.57,204h0a34.41,34.41,0,0,0,24.49-10.14l5.11-5.12A12,12,0,0,1,117.18,188.74ZM226.83,45.17a58.65,58.65,0,0,0-82.93,0l-5.11,5.11a12,12,0,0,0,17,17l5.12-5.12a34.63,34.63,0,1,1,49,49L175.1,145.86A34.39,34.39,0,0,1,150.61,156h0a34.63,34.63,0,0,1-33.69-26.72,12,12,0,0,0-23.38,5.44A58.64,58.64,0,0,0,150.56,180h.05a58.28,58.28,0,0,0,41.47-17.17l34.75-34.75a58.62,58.62,0,0,0,0-82.91Z\"/>\u003C/svg>\u003Csvg class=\"wiki-heading__icon wiki-heading__icon--done\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z\"/>\u003C/svg>\u003C/button>\u003C/h2>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https://www.istqb.org/wp-content/uploads/2024/11/ISTQB_CTFL_Syllabus_v4.0.1.pdf\" target=\"_blank\" rel=\"noopener\" class=\"wiki-link wiki-link--external\">ISTQB Certified Tester Foundation Level Syllabus v4.0.1, раздел 4.2.3, ISTQB, 2024\u003Csvg class=\"wiki-link__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M228,104a12,12,0,0,1-24,0V69l-59.51,59.51a12,12,0,0,1-17-17L187,52H152a12,12,0,0,1,0-24h64a12,12,0,0,1,12,12Zm-44,24a12,12,0,0,0-12,12v64H52V84h64a12,12,0,0,0,0-24H48A20,20,0,0,0,28,80V208a20,20,0,0,0,20,20H176a20,20,0,0,0,20-20V140A12,12,0,0,0,184,128Z\"/>\u003C/svg>\u003Cspan class=\"wiki-visually-hidden\">(откроется в новой вкладке)\u003C/span>\u003C/a> (на английском)\u003C/li>\n\u003Cli>\u003Ca href=\"https://glossary.istqb.org/\" target=\"_blank\" rel=\"noopener\" class=\"wiki-link wiki-link--external\">Глоссарий ISTQB\u003Csvg class=\"wiki-link__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M228,104a12,12,0,0,1-24,0V69l-59.51,59.51a12,12,0,0,1-17-17L187,52H152a12,12,0,0,1,0-24h64a12,12,0,0,1,12,12Zm-44,24a12,12,0,0,0-12,12v64H52V84h64a12,12,0,0,0,0-24H48A20,20,0,0,0,28,80V208a20,20,0,0,0,20,20H176a20,20,0,0,0,20-20V140A12,12,0,0,0,184,128Z\"/>\u003C/svg>\u003Cspan class=\"wiki-visually-hidden\">(откроется в новой вкладке)\u003C/span>\u003C/a> (на английском)\u003C/li>\n\u003Cli>\u003Ca href=\"https://www.imbus.de/en/glossar/term/decision-table-testing\" target=\"_blank\" rel=\"noopener\" class=\"wiki-link wiki-link--external\">Зеркало глоссария ISTQB: decision table testing, imbus\u003Csvg class=\"wiki-link__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M228,104a12,12,0,0,1-24,0V69l-59.51,59.51a12,12,0,0,1-17-17L187,52H152a12,12,0,0,1,0-24h64a12,12,0,0,1,12,12Zm-44,24a12,12,0,0,0-12,12v64H52V84h64a12,12,0,0,0,0-24H48A20,20,0,0,0,28,80V208a20,20,0,0,0,20,20H176a20,20,0,0,0,20-20V140A12,12,0,0,0,184,128Z\"/>\u003C/svg>\u003Cspan class=\"wiki-visually-hidden\">(откроется в новой вкладке)\u003C/span>\u003C/a> (на английском)\u003C/li>\n\u003Cli>\u003Ca href=\"https://www.imbus.de/en/glossar/term/cause-effect-graphing\" target=\"_blank\" rel=\"noopener\" class=\"wiki-link wiki-link--external\">Зеркало глоссария ISTQB: cause-effect graphing, imbus\u003Csvg class=\"wiki-link__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M228,104a12,12,0,0,1-24,0V69l-59.51,59.51a12,12,0,0,1-17-17L187,52H152a12,12,0,0,1,0-24h64a12,12,0,0,1,12,12Zm-44,24a12,12,0,0,0-12,12v64H52V84h64a12,12,0,0,0,0-24H48A20,20,0,0,0,28,80V208a20,20,0,0,0,20,20H176a20,20,0,0,0,20-20V140A12,12,0,0,0,184,128Z\"/>\u003C/svg>\u003Cspan class=\"wiki-visually-hidden\">(откроется в новой вкладке)\u003C/span>\u003C/a> (на английском)\u003C/li>\n\u003Cli>\u003Ca href=\"https://www.iso.org/standard/79430.html\" target=\"_blank\" rel=\"noopener\" class=\"wiki-link wiki-link--external\">ISO/IEC/IEEE 29119-4:2021, Software testing, Part 4: Test techniques, ISO\u003Csvg class=\"wiki-link__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M228,104a12,12,0,0,1-24,0V69l-59.51,59.51a12,12,0,0,1-17-17L187,52H152a12,12,0,0,1,0-24h64a12,12,0,0,1,12,12Zm-44,24a12,12,0,0,0-12,12v64H52V84h64a12,12,0,0,0,0-24H48A20,20,0,0,0,28,80V208a20,20,0,0,0,20,20H176a20,20,0,0,0,20-20V140A12,12,0,0,0,184,128Z\"/>\u003C/svg>\u003Cspan class=\"wiki-visually-hidden\">(откроется в новой вкладке)\u003C/span>\u003C/a> (на английском)\u003C/li>\n\u003Cli>\u003Ca href=\"https://www.oreilly.com/library/view/the-art-of/9781118133156/\" target=\"_blank\" rel=\"noopener\" class=\"wiki-link wiki-link--external\">The Art of Software Testing, 3rd Edition, Glenford J. Myers, Tom Badgett, Corey Sandler, Wiley, 2011\u003Csvg class=\"wiki-link__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M228,104a12,12,0,0,1-24,0V69l-59.51,59.51a12,12,0,0,1-17-17L187,52H152a12,12,0,0,1,0-24h64a12,12,0,0,1,12,12Zm-44,24a12,12,0,0,0-12,12v64H52V84h64a12,12,0,0,0,0-24H48A20,20,0,0,0,28,80V208a20,20,0,0,0,20,20H176a20,20,0,0,0,20-20V140A12,12,0,0,0,184,128Z\"/>\u003C/svg>\u003Cspan class=\"wiki-visually-hidden\">(откроется в новой вкладке)\u003C/span>\u003C/a> (на английском)\u003C/li>\n\u003Cli>\u003Ca href=\"https://arxiv.org/abs/1202.4836\" target=\"_blank\" rel=\"noopener\" class=\"wiki-link wiki-link--external\">Fault Based Techniques for Testing Boolean Expressions: A Survey, Badhera, Purohit, Taruna, arXiv, 2012\u003Csvg class=\"wiki-link__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M228,104a12,12,0,0,1-24,0V69l-59.51,59.51a12,12,0,0,1-17-17L187,52H152a12,12,0,0,1,0-24h64a12,12,0,0,1,12,12Zm-44,24a12,12,0,0,0-12,12v64H52V84h64a12,12,0,0,0,0-24H48A20,20,0,0,0,28,80V208a20,20,0,0,0,20,20H176a20,20,0,0,0,20-20V140A12,12,0,0,0,184,128Z\"/>\u003C/svg>\u003Cspan class=\"wiki-visually-hidden\">(откроется в новой вкладке)\u003C/span>\u003C/a> (на английском)\u003C/li>\n\u003Cli>\u003Ca href=\"https://cucumber.io/docs/gherkin/reference/\" target=\"_blank\" rel=\"noopener\" class=\"wiki-link wiki-link--external\">Gherkin reference, Cucumber\u003Csvg class=\"wiki-link__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M228,104a12,12,0,0,1-24,0V69l-59.51,59.51a12,12,0,0,1-17-17L187,52H152a12,12,0,0,1,0-24h64a12,12,0,0,1,12,12Zm-44,24a12,12,0,0,0-12,12v64H52V84h64a12,12,0,0,0,0-24H48A20,20,0,0,0,28,80V208a20,20,0,0,0,20,20H176a20,20,0,0,0,20-20V140A12,12,0,0,0,184,128Z\"/>\u003C/svg>\u003Cspan class=\"wiki-visually-hidden\">(откроется в новой вкладке)\u003C/span>\u003C/a> (на английском)\u003C/li>\n\u003Cli>\u003Ca href=\"https://github.com/cucumber/gherkin\" target=\"_blank\" rel=\"noopener\" class=\"wiki-link wiki-link--external\">Парсер и компилятор Gherkin, cucumber/gherkin, GitHub\u003Csvg class=\"wiki-link__icon\" viewBox=\"0 0 256 256\" width=\"16\" height=\"16\" fill=\"currentColor\" aria-hidden=\"true\" focusable=\"false\">\u003Cpath d=\"M228,104a12,12,0,0,1-24,0V69l-59.51,59.51a12,12,0,0,1-17-17L187,52H152a12,12,0,0,1,0-24h64a12,12,0,0,1,12,12Zm-44,24a12,12,0,0,0-12,12v64H52V84h64a12,12,0,0,0,0-24H48A20,20,0,0,0,28,80V208a20,20,0,0,0,20,20H176a20,20,0,0,0,20-20V140A12,12,0,0,0,184,128Z\"/>\u003C/svg>\u003Cspan class=\"wiki-visually-hidden\">(откроется в новой вкладке)\u003C/span>\u003C/a> (на английском)\u003C/li>\n\u003C/ul>\n",[10,14,17,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69],{"id":11,"level":12,"text":13},"какую-задачу-решают-таблицы-решений",2,"Какую задачу решают таблицы решений",{"id":15,"level":12,"text":16},"устройство-таблицы-решений","Устройство таблицы решений",{"id":18,"level":19,"text":20},"условия-и-действия",3,"Условия и действия",{"id":22,"level":19,"text":23},"правила","Правила",{"id":25,"level":19,"text":26},"обозначения","Обозначения",{"id":28,"level":19,"text":29},"таблицы-с-ограниченными-и-расширенными-записями","Таблицы с ограниченными и расширенными записями",{"id":31,"level":12,"text":32},"от-бизнес-правила-к-полной-таблице","От бизнес-правила к полной таблице",{"id":34,"level":12,"text":35},"невозможные-сочетания","Невозможные сочетания",{"id":37,"level":12,"text":38},"покрытие-таблицы-решений","Покрытие таблицы решений",{"id":40,"level":12,"text":41},"сокращение-таблицы","Сокращение таблицы",{"id":43,"level":19,"text":44},"безразличные-значения","Безразличные значения",{"id":46,"level":19,"text":47},"риски-сокращения","Риски сокращения",{"id":49,"level":12,"text":50},"правила-названные-по-результату","Правила, названные по результату",{"id":52,"level":12,"text":53},"тест-кейсы-по-таблице","Тест-кейсы по таблице",{"id":55,"level":12,"text":56},"сценарии-gherkin-по-таблице","Сценарии Gherkin по таблице",{"id":58,"level":12,"text":59},"таблицы-решений-и-граф-причин-и-следствий","Таблицы решений и граф причин и следствий",{"id":61,"level":12,"text":62},"ограничения-техники","Ограничения техники",{"id":64,"level":12,"text":65},"таблицы-решений-и-смежные-техники","Таблицы решений и смежные техники",{"id":67,"level":12,"text":68},"термины","Термины",{"id":70,"level":12,"text":71},"источники","Источники",2292,1793718892746]