Какво представляват тестовите данни в софтуерното тестване?
Като тестер може да си помислите, че „Проектирането на тестови случаи е достатъчно предизвикателство, тогава защо да се занимавате с нещо толкова тривиално като тестовите данни“. Целта на този урок е да ви запознае с тестовите данни, тяхното значение и да даде практически съвети и трикове за бързо генериране на тестови данни. И така, нека да започнем!
Какво представляват тестовите данни в софтуерното тестване?
Тестови данни в софтуерното тестване е входът, даден на софтуерна програма по време на изпълнение на теста. Той представлява данни, които засягат или са засегнати от изпълнението на софтуера по време на тестване. Тестовите данни се използват както за положително тестване, за да се провери дали функциите дават очаквани резултати за дадени входове, така и за отрицателно тестване, за да се тества способността на софтуера да обработва необичайни, изключителни или неочаквани входове.
Лошо проектираните данни за тестване може да не тестват всички възможни тестови сценарии, което ще попречи на качеството на софтуера.
Какво е генериране на тестови данни? Защо трябва да се създават тестови данни преди изпълнението на теста?
Всеки знае, че тестването е процес, който произвежда и консумира големи количества данни. Данните, използвани при тестване, описват първоначалните условия за тест и представляват средата, чрез която тестерът влияе върху софтуера. Това е важна част от повечето Функционални тестове.
В зависимост от вашата тестова среда може да се наложи да СЪЗДАДЕТЕ тестови данни (в повечето случаи) или поне да идентифицирате подходящи тестови данни за вашите тестови случаи (дали тестовите данни вече са създадени).
Обикновено тестовите данни се създават в синхрон с тестов случай предназначен е да се използва за.
Могат да се генерират тестови данни –
- Ръчно
- Масово копиране на данни от производствена в тестова среда
- Масово копиране на тестови данни от наследени клиентски системи
- Автоматизирани инструменти за генериране на тестови данни
Обикновено трябва да се генерират примерни данни, преди да започнете изпълнението на теста, тъй като по друг начин е трудно да се справите с управлението на тестови данни. Тъй като в много среди за тестване, създаването на тестови данни отнема множество предварителни стъпки или отнемащи много време конфигурации на тестова среда. . Също така, ако се направи генериране на тестови данни докато вие сте във фаза на изпълнение на теста, може да превишите крайния си срок за тестване.
По-долу са описани няколко вида тестване заедно с някои предложения относно техните нужди от тестови данни.
Данни от теста за бяло Box Тестване
In Бял Box Тестване, тестови данни Управлението се извлича от директно изследване на кода, който ще се тества. Тестовите данни могат да бъдат избрани, като се вземат предвид следните неща:
- Желателно е да се покрият колкото е възможно повече клонове; данните за тестване могат да бъдат генерирани така, че всички разклонения в изходния код на програмата да бъдат тествани поне веднъж
- Тестване на пътя: всички пътища в изходния код на програмата се тестват поне веднъж – може да се направи подготовка на тестови данни, за да се обхванат възможно най-много случаи
- Отрицателен Тестване на API:
- Тестовите данни може да съдържат невалидни типове параметри, използвани за извикване на различни методи
- Данните от тестването може да се състоят от невалидни комбинации от аргументи, които се използват за извикване на методите на програмата
Тестови данни за тестване на производителността
Тестване на производителността е типът тестване, което се извършва, за да се определи колко бързо реагира системата при конкретно натоварване. Целта на този вид тестване не е да се открият грешки, а да се премахнат тесните места. Важен аспект на тестването на производителността е, че наборът от използвани примерни данни трябва да бъде много близък до "истински" или "на живо" данни, които се използват в производството. Възниква следният въпрос: „Добре, добре е да тествам с реални данни, но как да получа тези данни?“ Отговорът е доста ясен: от хората, които знаят най-добре – клиентите. Те може да са в състояние да предоставят някои данни, които вече имат, или, ако нямат съществуващ набор от данни, може да ви помогнат, като дадат обратна връзка относно това как могат да изглеждат данните от реалния свят. В случай, че сте в a тестване за поддръжка проект можете да копирате данни от производствената среда в леглото за тестване. Добра практика е да Анонимизиране (разбъркване) чувствителни клиентски данни като социалноосигурителен номер, кредитна карта Numbers, банкови данни и др., докато се прави копието.
Тестови данни за тестване на сигурността
Тестване на сигурността е процесът, който определя дали една информационна система защитава данните от злонамерени намерения. Наборът от данни, които трябва да бъдат проектирани, за да се тества напълно сигурността на софтуера, трябва да обхваща следните теми:
- Поверителност: Цялата информация, предоставена от клиентите, се държи като най-строга конфиденциална и не се споделя с външни страни. Като кратък пример, ако дадено приложение използва SSL, можете да проектирате набор от тестови данни, които потвърждават, че криптирането е извършено правилно.
- Integrity: Определете, че информацията, предоставена от системата, е правилна. За да проектирате подходящи тестови данни, можете да започнете, като разгледате задълбочено дизайна, кода, базите данни и файловите структури.
- Authentication: Представлява процеса на установяване на самоличността на потребителя. Данните за тестване могат да бъдат проектирани като различна комбинация от потребителски имена и пароли и имат за цел да проверят дали само оторизираните лица имат достъп до софтуерната система.
- разрешението за употреба: Казва какви са правата на конкретен потребител. Данните за тестване може да съдържат различна комбинация от потребители, роли и операции за да проверите дали само потребители с достатъчно привилегии могат да извършат определена операция.
Тестови данни за черно Box Тестване
В черно Box Тестването на кода не се вижда от тестера. Вашите функционални тестови случаи могат да имат тестови данни, отговарящи на следните критерии –
- Няма данни: Проверете реакцията на системата, когато не са изпратени данни
- Валидни данни: Проверете реакцията на системата, когато са изпратени валидни данни от теста
- Невалидни данни: Проверете реакцията на системата, когато Невалиден подават се данни от теста
- Незаконен формат на данните: Проверете реакцията на системата, когато тестовите данни са в невалиден формат
- Набор от данни за гранични условия: Тестовите данни отговарят на условията за гранични стойности
- Набор от данни за дял на еквивалентност: Тествайте данните, квалифициращи вашите еквивалентни дялове.
- Набор от данни в таблицата за решения: Тестови данни, определящи вашата стратегия за тестване на таблицата с решения
- Набор от данни за тест за преход на състояние: Тестови данни, отговарящи на вашата стратегия за тестване на преход към състояние
- Използване на тестови данни за случай: Тестови данни в синхрон с вашите случаи на употреба.
Забележка: В зависимост от софтуерното приложение, което ще се тества, може да използвате някои или всички от горните създаване на тестови данни
Автоматизирани инструменти за генериране на тестови данни
За да генерирате различни набори от данни, можете да използвате набор от автоматизирани инструменти за генериране на тестови данни. По-долу са някои примери за такива инструменти:
DTM Генератор на тестови данни, е напълно адаптивна помощна програма, която генерира данни, таблици (изгледи, процедури и т.н.) за целите на тестване на бази данни (тестване на производителността, тестване на качеството, тестване на натоварване или тестване на използваемостта).
Datatect е a SQL генератор на данни от Banner Software, генерира разнообразие от реалистични тестови данни в ASCII плоски файлове или директно генерира тестови данни за RDBMS, включително Oracle, Sybase, SQL Server и Informix.
Заключение
В заключение, добре проектираните данни от тестване ви позволяват да идентифицирате и коригирате сериозни недостатъци във функционалността. Изборът на избраните тестови данни трябва да бъде преоценен във всяка фаза на многофазния цикъл на разработване на продукта. Така че винаги го следете. За да улесните този процес, като използвате ефективни инструменти за генериране на тестови данни може значително да рационализира работния ви процес.