Какво представлява тестването, управлявано от данни?

⚡ Умно обобщение

Тестването, управлявано от данни, е метод за тестване на софтуер, който съхранява тестови данни в таблици или електронни таблици, така че един скрипт да може да валидира много входни комбинации. Той разделя тестовата логика от данните, намалявайки дублирането на скриптове и усилията за поддръжка.

  • 📊 Основна концепция: Един единствен тестов скрипт чете входни данни от .xls, .csv, .xml или източници от база данни и изпълнява всеки набор от данни автоматично.
  • 🧱 Дизайн на рамката: Идентифицирайте тестови случаи, напишете общите стъпки веднъж, екстернализирайте данните и след това изпълнете скрипта за всеки ред с данни.
  • ️ Печалба на ефективност: Тестването на 1000 комбинации за вход изисква един параметризиран скрипт вместо 1000 отделни скрипта.
  • 🛠️ Инструментална: Платформи като Testsigma, Testiny, и Testpad управлявайте параметризирани набори от данни и докладвайте за неуспехи по ред с данни.
  • ✅ Най-добри практики: Използвайте реалистични данни, обхващайте положителни и отрицателни резултати и генерирайте динамични твърдения от набори от данни.
  • ⚠️ Компромис: Качеството на тестовете зависи от уменията за автоматизация, а големите набори от данни увеличават работата по валидиране и поддръжка.

Какво е тестване, управлявано от данни

Тестване, управлявано от данни

Тестване, управлявано от данни е метод за тестване на софтуер, при който тестовите данни се съхраняват във формат на таблица или електронна таблица. Тестването, управлявано от данни, позволява на тестерите да въведат един тестов скрипт, който може да изпълнява тестове за всички тестови данни от таблица и да очаква резултата от теста в същата таблица. Нарича се още тестване, управлявано от таблица, или параметризирано тестване.

Управлявана от данни рамка

Управлявана от данни рамка е рамка за автоматизирано тестване, в която входните стойности се четат от файлове с данни и се съхраняват в променливи в тестови скриптове. Тя позволява на тестерите да изграждат както положителни, така и отрицателни тестови случаи в един тест. Входните данни в рамката, управлявана от данни, могат да се съхраняват в един или множество източници на данни, като .xls, .xml, .csv и бази данни. Диаграмата по-долу показва как входните стойности преминават от файла с данни към тестовия скрипт.

Управлявана от данни рамка

Защо тестване, управлявано от данни?

Тестване, управлявано от данни е важно, защото тестерите често имат множество набори от данни за един тест и създаването на отделни тестове за всеки набор от данни може да отнеме много време. Тестването, управлявано от данни, помага да се отделят данните от тестовите скриптове и едни и същи тестови скриптове могат да се изпълняват за различни комбинации от входни тестови данни, като същевременно резултатите от тестовете се генерират ефективно.

Пример:

Да предположим, че искаме да тестваме системата за вход с множество полета за въвеждане спрямо 1000 различни набора от данни.

За да тествате това, можете да предприемете следните различни подходи:

Подход 1) Създайте 1000 скрипта, по един за всеки набор от данни, и изпълнете всеки тест отделно един по един.

Подход 2) Променете ръчно стойността в тестовия скрипт и го изпълнете няколко пъти.

Подход 3) Импортирайте данните от Excel листа. Извличайте тестовите данни от редовете на Excel един по един и изпълнявайте скрипта.

Сред дадените три сценария, първите два са трудоемки и отнемат време. Следователно е идеално да се следва третият подход.

По този начин третият подход не е нищо друго освен рамка, управлявана от данни.

#1 НАЙ-ДОБЪР ОБЩ РЕЗУЛТАТГлобално тестване на приложения
9.8/ 10
★ ★ ★ ★ ★
Вземете безплатна демонстрация
PractiTest
9.5/ 10
★ ★ ★ ★ ★
посещение PractiTest
Testiny
9.3/ 10
★ ★ ★ ★ ★
посещение Testiny
Най-добър заКраудтестиране и QAУправление на тестовеМалки и средни екипи за осигуряване на качеството
Основна характеристика✓Тестване за интеграция с трети страни✓Централизирано управление на тестовете✓Ръчни + автоматизирани тестови случаи
Интеграции✓Джира, Slack, TestRail✓Джира, Jenkins, Slack✓Джира, GitHub, GitLab
Безплатен пробен периодБезплатна демонстрация14-дневен безплатен пробен периодБезплатна демонстрация
Вземете безплатна демонстрацияпосещение PractiTestпосещение Testiny

Видове тестови данни при тестване, управлявано от данни

Стойността на тестването, базирано на данни, зависи пряко от качеството на наборите от данни, които въвеждате в тестовите си скриптове. Добре проектираният файл с данни смесва няколко категории тестови данни, така че един скрипт да може да валидира нормалното поведение, обработката на грешки и ограниченията в едно изпълнение:

  • Положителни (валидни) данни: Правилни входни данни, като например валидно потребителско име и парола, използвани за потвърждение, че приложението приема това, което трябва да приема.
  • Отрицателни (невалидни) данни: Грешни или деформирани входни данни, които трябва да бъдат отхвърлени, като например неправилна парола или специални символи в числово поле.
  • Гранични данни: Стойности в границите на разрешените диапазони, като например потребителско име от 1 или 255 знака, които често разкриват скрити дефекти.
  • Празни или нулеви данни: Празни полета, които проверяват валидирането на задължителните полета и съобщенията за грешки.
  • Данни с голям обем: Групови или произволно генерирани записи, използвани за проверка на производителността и стабилността при реалистично натоварване.

След като са подготвени правилните данни, следващата стъпка е изграждането на самата рамка.

Как да създадете управлявана от данни рамка за автоматизация

Рамка за автоматизация, управлявана от данни

Да предположим, че искате да тествате функционалността за вход в приложение. Блок-схемата по-горе показва пълния цикъл: идентифицирайте тестовите случаи, напишете общия тестов скрипт, преместете данните във външен файл и изпълнете скрипта за всеки ред с данни.

Стъпка 1) Идентифицирайте тестовите случаи

  • Въведете правилно потребителско име и парола – влизането е успешно
  • Въведете неправилно потребителско име и правилна парола – неуспешно влизане
  • Въведете правилно потребителско име и неправилна парола – неуспешно влизане

Стъпка 2) Създайте подробни тестови стъпки за горните 3 тестови случая

Тестов случай № Descriptйон Тестови стъпки Данни от теста Очаквани резултати
1 Проверете Вход за валидни идентификационни данни
  1. Стартирайте приложението
  2. Въведете парола за потребителско име
  3. Щракнете върху OK
  4. Проверете резултатите
Потребителско име: валидна парола: валидна Успешно влизане
2 Проверете Вход за невалидни идентификационни данни
  1. Стартирайте приложението
  2. Въведете парола за потребителско име
  3. Щракнете върху OK
  4. Проверете резултатите
Потребителско име: невалидна парола: валидна Неуспешно влизане
3 Проверете Вход за невалидни идентификационни данни
  1. Стартирайте приложението
  2. Въведете парола за потребителско име
  3. Щракнете върху OK
  4. Проверете резултатите
Потребителско име: валидна парола: невалидна Неуспешно влизане

Стъпка 3) Създайте тестов скрипт

Ако наблюдавате, стъпките на теста остават общи и в трите тестови случая. Трябва да създадете тестов скрипт, за да изпълните тези стъпки:

// This is Pseudo Code

// Test Step 1: Launch Application
driver.get("URL of the Application");

// Test Step 2: Enter Username
txtbox_username.sendKeys("valid");

// Test Step 3: Enter Password
txtbox_password.sendKeys("invalid");

// Test Step 4: Check Results
If (Next Screen) print success else Fail

Стъпка 4) Създайте Excel/CSV файл с входните тестови данни, както е показано в примерния лист по-долу

Рамка за автоматизация, управлявана от данни

Стъпка 5) Променете скрипта, за да обхожда входните тестови данни. Входните команди също трябва да бъдат параметризирани.

// This is Pseudo Code
// Loop 3 Times
for (i = 0; i & lt; = 3; i++) {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel(i, 0);
    int input_2 = ReadExcel(i, 1);

    // Test Step 1: Launch Application
    driver.get("URL of the Application");

    // Test Step 2: Enter Username
    txtbox_username.sendKeys(input_1);
    // Test Step 3: Enter Password

    txtbox_password.sendKeys(input_2);
    // Test Step 4: Check Results
    If(Next Screen) print success
    else Fail
}

По-горе са само 3 тестови случая. Тестовият скрипт може да се използва за преминаване през следните тестови случаи само чрез добавяне на стойности на тестови данни към Excel

  • Въведете неправилно потребителско име и неправилна парола – неуспешно влизане
  • Въведете правилно потребителско име и парола празно – Входът е неуспешен
  • Въведете празно потребителско име и празна парола– Неуспешно влизане

И така нататък

💡 Професионален съвет: Съхранявайте очаквания резултат за всеки ред в същия файл с данни като входните данни. Вашият скрипт може автоматично да сравнява действителните и очакваните резултати, превръщайки файла с данни в пълен, самопроверяващ се набор от тестове.

След като вашата рамка е готова, правилният инструмент опростява управлението на данни, изпълнението и отчитането.

Най-добрият инструмент за тестване, базирано на данни

1) Тест сигма

Тест сигма е облачна платформа за тестване, базирана на данни, която намирам за безценна за максимизиране на тестовото покритие чрез отделяне на тестовата логика от тестовите данни. Тя е специално разработена за екипи, които трябва да валидират приложения спрямо различни набори от данни, гранични случаи и бизнес сценарии, без да създават излишни тестови скриптове, рационализирайки целия работен процес за тестване, базиран на данни.

По време на моите проекти за тестване, базирани на данни, използвах възможностите за параметризация на Testsigma, за да изпълнявам идентични тестови сценарии спрямо множество комбинации от данни от външни източници като Excel и CSV файлове. Способността на платформата да итерира през редове с данни автоматично значително разшири обхвата на тестовете ми, докато детайлното отчитане на резултатите на ниво данни ми помогна бързо да идентифицирам кои специфични входни комбинации са задействали неуспехи в уеб, мобилни и API слоеве.

Тест сигма

Характеристики:

  • Интеграция на външни източници на данни: Тази функция позволява директни връзки към електронни таблици в Excel, CSV файлове и таблици в база данни за централизирано управление на тестови данни. Тя елиминира твърдо кодираните стойности и ви позволява да поддържате тестовите данни независимо от тестовата логика. Можете да актуализирате набори от данни, без да променяте тестови скриптове, което осигурява гъвкавост и поддръжка. Използвам това, за да управлявам ефикасно стотици вариации на данни, като същевременно запазвам...ping тестовите сценарии са чисти и могат да се използват многократно.
  • Автоматизирана итерация на многоредови данни: Testsigma автоматично изпълнява тестови сценарии в множество редове с данни в едно тестово изпълнение, като по този начин драстично разширява обхвата. Можете да валидирате множество входни комбинации, гранични условия и вариации на бизнес правила, без да дублирате тестови случаи. Тази функция обработва последователността на данните и логиката на итерациите прозрачно. Намерих това за особено ефективно за цялостно регресионно тестване с минимални разходи за поддръжка на скриптове.
  • Параметризиране на стъпката на динамичен тест: Тя ви позволява да замените статичните стойности с динамични параметри, които извличат данни от външни източници по време на изпълнение. Можете да конфигурирате стъпките на теста, за да се адаптират към различни входни данни, условия и очаквани резултати въз основа на стойностите на набора от данни. Тази функция поддържа сложни трансформации на данни и условна логика. Разчитам на нея, за да изградя гъвкави тестови сценарии, които отговарят на разнообразни бизнес изисквания и потребителски работни потоци.
  • Отчитане на изпълнението на ниво данни: Платформата генерира подробни отчети, които разбиват резултатите от тестовете по отделни комбинации от данни, показвайки точно кои входни данни са преминали или не са преминали. Можете да анализирате модели, да идентифицирате проблемни диапазони от данни и tracгрешки в конкретни редове от набор от данни. Тази функция предоставя визуални табла за управление и експортируеми анализи за комуникация със заинтересованите страни. Препоръчвам да използвате тези анализи, за да приоритизирате подобренията в качеството на данните и да усъвършенствате стратегиите за тестови данни.
  • Поддръжка, базирана на данни, за различни платформи: Testsigma разширява възможностите, базирани на данни, в уеб, мобилни и API тестове в рамките на унифицирани работни процеси. Можете да прилагате едни и същи набори от данни, за да валидирате съгласуваност между различни слоеве и технологии на приложението. Тази функция осигурява цялостна валидация от край до край с параметризирани потоци от данни. Използвал съм я, за да проверя дали обработката на данни от backend-а се отразява правилно във frontend интерфейсите на множество платформи едновременно.

Предимства

  • Получих по-широко тестово покритие, без драстично да увелича общия брой изпълнени тестови случаи.
  • Свързването с общи източници на данни е лесно и намалява времето за настройка на ежедневните работни процеси за тестване.
  • Подробното отчитане на ниво данни улеснява бързото идентифициране на точно кои комбинации се провалят

Недостатъци

  • Трябваше да управлявам внимателно наборите от данни, защото големите обеми могат бързо да станат объркващи

Pricing:

  • Цена: Персонализирано ценообразуване с възможности за тестване, базирано на данни, включени като част от цялостния абонаментен план
  • Безплатен пробен период: 14-дневна безплатна пробна версия

Посетете Testsigma >>

14-дневна безплатна пробна версия


2) Testiny

Testiny е модерна облачна платформа за управление на тестове, която използвам, за да организирам ефективно тестови случаи, базирани на данни, като същевременно запазвамping ясно разделение между тестовата логика и параметризираните набори от данни. Създаден е за екипи, които трябва да управляват разнообразни комбинации от данни в много тестове, без да губят tracлеснота.

Докато изпълнявате проекти, базирани на данни, с TestinyОцених как функциите за групово редактиране и шаблони улесняват мащабирането на вариации на тестове в стотици редове с данни. Платформата се интегрира с Jira, GitHub и GitLab, така че неуспешните комбинации от данни водят обратно към проблема. tracсе задейства автоматично.

Testiny

Характеристики:

  • Редактиране на групови тестови случаи: Testiny позволява ви да редактирате, дублирате и параметризирате много тестови случаи едновременно, което ускорява създаването на вариации, базирани на данни. Можете да прилагате промени в папки за секунди, без да докосвате всеки случай поотделно. Разчитам на това, когато разширявам обхвата към нови набори от данни, без да пренаписвам скриптове.
  • Персонализирани полета за въвеждане на данни: Това ви позволява да дефинирате персонализирани полета за всеки проект, така че атрибутите на набора от данни да могат да бъдат tracсе съхраняват заедно с всяко тестово изпълнение. Можете да записвате входните стойности, очакваните резултати и условията ясно на едно място. Използвам тези полета, за да запазя сложните параметризирани сценарии лесни за одитиране по-късно.
  • Тестово изпълнение в реално време Tracking: Платформата показва състоянието на изпълнение в реално време между членовете на екипа, така че тестовете, базирани на данни, остават прозрачни. Можете да разпределяте случаи, да наблюдавате процентите на успеваемост/неуспех и да идентифицирате блокирани комбинации от данни, когато се случват. Смятам, че това е полезно за keeping Ръководителите на QA са информирани без постоянни срещи за състоянието.
  • PDF и споделяеми отчети: Testiny Генерира ясни PDF отчети с диаграми и обобщения на изпълнението, които можете да споделяте с нетехнически заинтересовани страни. Можете да филтрирате по набор от данни, етап или издание. Изпращам ги в края на всеки спринт, за да съобщя за качествена подготовка.
  • Местен проблем TracИнтеграции на ker: Свързва се с Jira, GitHub, GitLab, Azure DevOps, Линеен, Asana, Confluence, Trello и monday.com, така че неуспешните редове с данни бързо се превръщат в заявки. Можете да поддържате изпълнението на тестовете и работните процеси по инженерство съгласувани. Забелязах, че това драстично намалява напрежението при предаването на отговорности между екипите за контрол на качеството и разработка.

Предимства

  • Забелязах, че груповото редактиране поддържа поддръжката на тестове, управлявани от данни, лека, дори когато наборите от данни нарастват.
  • Свързване Testiny към нашата дъска в Jira отне минути и веднага показа неуспешни комбинации от данни като билети.
  • В реално време tracking ми дава ясна представа кои комбинации от данни все още са в процес на изпълнение.

Недостатъци

  • Липсваше ми вградените разширени API автоматизационни куки за много големи параметризирани регресионни пакети

Pricing:

  • Цена: Безплатен план за до 3 потребители; платените планове се мащабират по места и добавят премиум поддръжка
  • Безплатен пробен период: 21-дневна безплатна пробна версия

посещение Testiny >>

21-дневна безплатна пробна версия


3) Testpad

Testpad е лек инструмент за управление на тестове, базиран на контролни списъци, на който се разчитам, когато сценарии, базирани на данни, се нуждаят от бързо заснемане без излишни церемонии. Той е изграден около йерархични контролни списъци, така че тестерите могат да групират вариациите на данните под родителски случаи и да ги изпълняват бързо.

По време на моите сесии, базирани на данни, с Testpad, използвах интерфейса му, ориентиран към клавиатурата, за да генерирам десетки варианти на въвеждане наведнъж. Поддръжката на гост-тестери ми позволи да привлека експерти в областта, за да валидират крайни комбинации от данни, без да плащам за допълнителни места.

Testpad

Характеристики:

  • Йерархични контролни списъци за тестове: Testpad организира параметризирани тестове във вложени контролни списъци, така че да можете да групирате свързани вариации на данни под един родителски случай. Можете да разширявате и свивате клонове, за да се фокусирате върху конкретни набори от данни. Използвам това, за да поддържам сложните матрици с данни визуално подредени.
  • Редактиране с клавиатура: Позволява ви да създавате, добавяте отстъп и пренареждате тестови елементи с клавишни комбинации, така че изграждането на големи планове, базирани на данни, е бързо. Можете да поддържате потока, без да посягате към мишката. Смятам, че това драстично намалява времето за заснемане на нови редове от набор от данни.
  • Достъп за гост-тестери: Testpad Поддържа неограничен брой гост-тестери без такси за работно място, така че можете да привлечете експерти в областта за специфични комбинации от данни. Можете да поканите заинтересовани страни да проверят крайни случаи без допълнителни разходи за лицензиране. Разчитам на това по време на приемането от страна на потребителите с параметризирани сценарии.
  • Отчети за незабавно споделяне: Платформата генерира леки отчети, които можете да споделяте чрез линк, така че напредъкът да е видим, без да отваряте инструмента. Можете да филтрирате по тестер, статус или тестов клон. Изпращам ги на продуктовите мениджъри в края на всяко тестово изпълнение, базирано на данни.
  • Издаване Tracкер Линкинг: Свързва неуспешните тестове с Jira или GitHub тикети чрез прости връзки, така че неуспешните редове с данни бързо се насочват към инженерния отдел. Можете да прикачите контекст директно от елемент от контролния списък с неуспешни тестове. Поддържам фокуса на тестващия екип върху изпълнението, докато оставям инструментите да се справят с маршрутизацията.

Предимства

  • Преминавам бързо през стотици вариации на данни благодарение на стила на контролния списък с клавиатура първо
  • Привличането на гост-тестери за специфични сценарии с данни не струва нищо допълнително, което спестява реален бюджет.
  • Мобилният интерфейс ми позволява да извършвам проверки за дим, базирани на данни, по време на пътуване до работа или по време на изправяне.

Недостатъци

  • Иска ми се да имаше вградени автоматизирани куки за много големи регресионни обходи, базирани на данни.

Pricing:

  • Цена: Плановете започват от $59/месец, като за по-големи екипи се предлагат персонализирани корпоративни планове.
  • Безплатен пробен период: 30-дневен безплатен пробен период

посещение Testpad >>

30-дневна безплатна пробна версия

Най-добри практики за тестване, управлявано от данни

По-долу са дадени най-добрите практики за тестване, основано на данни:

  • Идеално е да използвате реалистична информация по време на процеса на тестване, базиран на данни
  • Навигацията в тестовия поток трябва да бъде кодирана в тестовия скрипт
  • Управлявайте виртуални API със значими данни
  • Използвайте данни за стимулиране на динамични твърдения
  • Тествайте както положителни, така и отрицателни резултати
  • Преназначение на управлявани от данни функционални тестове за сигурност и производителност

Предимства на тестването, управлявано от данни

Тестването, основано на данни, предлага много предимства. Някои от тях са:

  1. Позволява тестване на приложението с множество набори от стойности на данни по време на Регресионно тестване
  2. Тестовите данни и данните за проверка могат да бъдат организирани само в един файл и той е отделен от логиката на тестовия случай.
  3. Въз основа на инструмента е възможно тестовите скриптове да се съхраняват в едно хранилище. Това прави тестовете лесни за разбиране, поддръжка и управление.
  4. Действията и функциите могат да се използват повторно в различни тестове.
  5. Някои инструменти генерират тестови данни автоматично. Това е полезно, когато са необходими големи обеми от произволни тестови данни, което помага да се спести време.
  6. Тестването, основано на данни, може да се извършва във всяка фаза на разработката. Тестовите случаи, основани на данни, обикновено се обединяват в един процес. Те обаче могат да се използват в множество тестови случаи.
  7. Позволява на разработчиците и тестерите да имат ясно разделение на логиката на техните тестови случаи/скриптове от тестовите данни.
  8. Едни и същи тестови случаи могат да се изпълняват няколко пъти, което помага за намаляване на броя на тестовете и скриптовете.
  9. Всякакви промени в тестовия скрипт не влияят на тестовите данни.

Недостатъци на тестването, управлявано от данни

Някои недостатъци на метода за тестване на автоматизация, управлявана от данни, са:

  1. Качеството на теста зависи от уменията за автоматизация на екипа, който го внедрява.
  2. Валидирането на данни е отнемаща време задача при тестване на голямо количество данни.
  3. Поддръжката е голям проблем, тъй като е необходимо голямо количество кодиране за тестване, управлявано от данни.
  4. Необходими са технически умения на високо ниво. Тестерът може да трябва да научи изцяло нов скриптов език.
  5. Ще има повече документация, свързана най-вече с управлението на скриптове, тестовата инфраструктура и резултатите от тестовете.
  6. За създаване и поддържане на файлове с данни е необходим текстов редактор като Notepad.

Тестване, основано на данни, срещу тестване, основано на ключови думи

Начинаещите често бъркат тестването, управлявано от данни, с тестването, управлявано от ключови думи, защото и двете разделят дизайна на теста от тестовите скриптове. Разликата се състои в това, което се екстернализира: тестването, управлявано от данни, екстернализира входните стойности, докато тестването, управлявано от ключови думи, екстернализира самите действия като ключови думи за многократна употреба. Таблицата по-долу сравнява двата подхода:

Параметър Тестване, управлявано от данни Тестване, управлявано от ключови думи
Какво е екстернализирано Тестови данни (входни данни и очаквани резултати) Тестови действия (ключови думи като Вход, Кликване, Проверка)
Източник на данни Excel, CSV, XML или таблици в база данни Таблици с ключови думи плюс опционални таблици с данни
Необходими умения Умерени познания по скриптове По-високи първоначални усилия за проектиране; по-малко кодиране за създаване на нови тестове
Най-подходящ за Повтаряне на един сценарий с много входни комбинации Изграждане на множество сценарии от блокове за многократна употреба с действия
поддръжка Актуализирайте файлове с данни без да докосвате скриптове Актуализирайте библиотеката с ключови думи, когато поведението на приложението се промени

Много екипи комбинират двата подхода в хибридна рамка, където ключовите думи дефинират действия за многократна употреба, а външните файлове с данни предоставят стойностите за всяко тестово изпълнение.

Въпроси и Отговори

Да, но е неефективно. Ръчен тестер може да изпълни едни и същи стъпки с различни входни данни от електронна таблица, но автоматизацията е за предпочитане, защото изпълнява стотици комбинации от данни бързо, последователно и без човешка грешка.

Selenium с TestNG or JUnit, UFTи облачни платформи, като например Тест сигма поддържайте го. Всеки език, който може да чете външни файлове, включително Java, Pythonи C# могат да имплементират рамка, управлявана от данни.

Използвайте достатъчно редове, за да покриете валидни, невалидни, гранични и празни стойности за всяко поле за въвеждане. Качеството е по-важно от количеството; десет добре подбрани комбинации обикновено разкриват повече дефекти от хиляда произволни.

Да. Инструментите с изкуствен интелект анализират областите на приложение и автоматично създават реалистични, разнообразни и защитени от поверителност синтетични набори от данни, включително крайни случаи, които хората тестери могат да пропуснат. Това намалява времето, прекарано в подготовка и поддръжка на файлове с данни.

Изкуственият интелект добавя самовъзстановяващи се локатори, които оцеляват при промени в потребителския интерфейс, предвижда кои комбинации от данни е най-вероятно да се провалят и приоритизира редовете с висок риск. Това поддържа големите параметризирани пакети стабилни, като същевременно намалява времето за изпълнение и усилията за поддръжка.

Обобщете тази публикация с: