Анализ на гранични стойности и разделяне на еквивалентност
⚡ Умно обобщение
Разделянето на еквивалентност и анализът на граничните стойности са техники за тестване „черна кутия“, които компресират големи входни диапазони в класове на еквивалентност и тестват ръбовете на разделянето, осигурявайки силно откриване на дефекти с ефективно покритие както на валидни, така и на невалидни входни данни.
Изчерпателното тестване рядко е осъществимо поради времеви и комбинаторни ограничения. Разделянето на еквивалентността и анализът на граничните стойности решават това чрез групиране.ping подобни входни данни и насочване към техните граници за по-силно покритие с по-малко случаи.
Какво е еквивалентно разделяне?
Разделяне на еквивалентност (наричано още Equivalence Class Partitioning или ECP) е техника на черна кутия, която разделя входните данни на групи с еквивалентни стойности. Тестерът избира по един представител за всеки клас, приемайки, че софтуерът се държи еднакво за всеки член.
- Разделя входния домейн на валидни и невалидни класове на еквивалентност.
- Прилага се изобщо нива на тестване—единица, интеграция, система и приемане.
Какво е анализ на граничните стойности?
Анализ на гранични стойности (BVA), наричана още проверка на диапазона, валидира крайните граници на всеки клас на еквивалентност. Тъй като дефектите се групират в границите на диапазона, BVA се фокусира върху пет ключови точки:
- Минимум
- Малко над минимума
- Номинална стойност
- Малко под максимума
- Максимален
BVA допълва еквивалентното разделяне: след като класовете са дефинирани, техните гранични стойности се появяват неравномерно и се появяват грешки на ръба.
Защо да използваме еквивалентно разделяне и анализ на граничните стойности?
Интелигентният избор на тестове е от съществено значение, когато комбинациите са твърде големи за изчерпателно тестване. Тези техники предлагат три предимства:
- Компресирайте големи обеми от тестови случаи в управляеми парчета.
- Осигурете ясни правила за избор на тестови данни, без да жертвате ефективността.
- Подходящи за приложения с интензивни изчисления и много числови променливи.
Как да се извърши еквивалентно разделяне (пример)
- Разгледайте текстовото поле „Поръчай пица“ по-долу.
- Количества 1–10 са валидни; появява се съобщение за успех.
- Количества 11–99 са невалидни, задействат „Могат да се поръчат само 10 пици“.
Тестови условия:
- Всяко число над 10 е невалидно.
- Всяко число под 1 е невалидно.
- Numbers 1–10 са валидни.
- Всяко трицифрено число като -100 е невалидно.
Тестването на всяка стойност води до над 100 случая. Разделянето на еквивалентност групира домейна в класове с идентично поведение.
Тези групи се наричат Класове на еквивалентностИзберете по една стойност за всеки клас – ако тя е успешна, всички останали са успешни; ако е неуспешна, целият клас е неуспешен.
Как се извършва анализ на гранични стойности (пример)
Използвайки същото поле Pizza, BVA проверява ръбовете на дяловете, а не номиналните стойности. Тестерите оценяват 0, 1, 10 и 11 – покривайки валидни и невалидни граници.
За вход, приемащ от 1 до 10, граничните тестови случаи са:
| Сценарий на теста Descriptйон | Очакван резултат |
|---|---|
| Гранична стойност = 0 | Системата НЕ трябва да приема |
| Гранична стойност = 1 | Системата трябва да приеме |
| Гранична стойност = 2 | Системата трябва да приеме |
| Гранична стойност = 9 | Системата трябва да приеме |
| Гранична стойност = 10 | Системата трябва да приеме |
| Гранична стойност = 11 | Системата НЕ трябва да приема |
Разделяне на еквивалентност спрямо анализ на гранични стойности
И двете намаляват обема на тестовете, но се различават по фокус и време.
| Аспект | Разделяне на еквивалентност | Анализ на гранични стойности |
|---|---|---|
| Фокус | Групи от еквивалентни входове | Ръбове на всяка група |
| Избор на данни | Една стойност на клас | Мин., почти мин., номинал., почти макс., макс. |
| Най - доброто за | Намаляване на излишните случаи | Откриване на дефекти, които се различават един по един |
| Поръчка | Приложено първо | Приложено следващо |
Пример: Валидиране на поле за парола
Поле за парола, приемащо от 6 до 10 знака, образува три дяла – 0-5, 6-10 и 11-14 – с еквивалентни резултати във всеки от тях.
| # | Сценарий на теста | Очакван резултат |
|---|---|---|
| 1 | Въведете от 0 до 5 знака | Системата не трябва да приема |
| 2 | Въведете от 6 до 10 знака | Системата трябва да приеме |
| 3 | Въведете от 11 до 14 знака | Системата не трябва да приема |
Най-добри практики за еквивалентно разделяне и BVA
Следвайте тези практики, за да поддържате силно покритие, като същевременно контролирате броя на тестовете:
- Картографирайте всеки домейн: Първо избройте валидните, невалидните и специалните дялове.
- Тествайте и двете страни на всяка граница: Включете стойности само вътре и отвън, за да уловите грешки, които се различават с едно по едно.
- Комбинирайте техники: Свържете с таблици за решения или тестване на преходи от състояния за сложна логика.
- Автоматизиране на гранични случаи: Параметризирайте граничните стойности, така че регресионните пакети да работят последователно.
Ключови храни за вкъщи
- Разделянето на еквивалентност групира подобни входни данни; една стойност на клас е достатъчна.
- Анализът на граничните стойности валидира границите на разделянето и валидните/невалидните ръбове.
- И двете са техники на „черна кутия“ за числови или базирани на диапазон полета.
- Комбинирането им намалява обема на тестовете, без да се губи качеството на откриване на дефекти.
Анализ на гранични стойности и тестване за разделяне на еквивалентност Видео
Кликнете тук ако видеото не е достъпно





