Тестово покритие при тестване на софтуер

Какво е тестово покритие?

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

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

Какво прави тестовото покритие?

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

Как може да се постигне тестово покритие?

  • Тестовото покритие може да се извърши чрез упражняване на техники за статичен преглед като партньорски прегледи, инспекции и преглед
  • Чрез трансформиране на ad-hoc дефектите в изпълними тестови случаи
  • На ниво код или ниво на тест на единица, покритието на теста може да бъде постигнато чрез използване на инструментите за автоматизирано покритие на код или покритие на тест на единица
  • Функционалното тестово покритие може да се извърши с помощта на подходящи инструменти за управление на тестове

Предимства на тестовото покритие в софтуерното инженерство

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

Какви са основните разлики между покритието на кода и покритието на теста?

Покритие на кода и тестовото покритие са техники за измерване, които ви позволяват да оцените качеството на кода на вашето приложение.

Ето някои критични разлики между кабините на тези методи на покритие:

параметри Покритие на кода Тестово покритие
дефиниция Терминът за покритие на кода, използван, когато кодът на приложението се упражнява, когато приложение работи. Тестовото покритие означава цялостен тестов план.
Цел Показателите за покритие на кода могат да помогнат на екипа да наблюдава своите автоматизирани тестове. Тестовото покритие дава подробности за нивото, до което е тествано писменото кодиране на дадено приложение.
Подтипове Покритието на кода е разделено на подтипове като покритие на изявления, покритие на условия, покритие на клонове, покритие на Toogle, покритие на FSM. Няма подтип на метода за тестово покритие.

Формула за тестово покритие

За да изчислите тестовото покритие, трябва да следвате дадените по-долу стъпки:

Стъпка 1) Общият брой редове код в качеството на софтуера, което сте тестване

Стъпка 2) Броят редове код, които всички тестови случаи изпълняват в момента

Сега трябва да намерите (X, делено на Y), умножено по 100. Резултатът от това изчисление е % на вашето тестово покритие.

Например:

Ако броят на редовете код в системен компонент е 500 и броят на редовете, изпълнени във всички съществуващи тестови случаи, е 50, тогава вашето тестово покритие е:

(50 / 500) * 100 = 10%

Примери за тестово покритие

Пример 1:

Например, ако „нож“ е предмет, който искате да тествате. След това трябва да се съсредоточите върху проверката дали реже зеленчуците или плодовете точно или не. Има обаче други аспекти, които трябва да се търсят, като потребителят трябва да може да се справя удобно с него.

Пример 2:

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

Недостатъци на тестовото покритие:

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