Какво е сравнително тестване?
Преди да научим бенчмарк тестване, нека разберем-
Бенчмарк в тестването на производителността
A Бенчмарк в тестването на производителността е метрика или референтна точка, спрямо която могат да се сравняват софтуерни продукти или услуги, за да се оценят мерките за качество. С други думи, Benchmark означава определен стандарт, който помага да се определи качеството на софтуерен продукт или услуга. Можем да сравним софтуерен продукт или услуга, за да оценим качеството им.
Например футболен отбор има критерий за играч, който да се квалифицира като играч от Висшата лига. Наборът от умения за еталон може да бъде брой отбелязани голове през последните пет сезона, или притежание на топката през първото полувреме, или минимален брой изиграни игри в местния турнир и т.н.
Какво е сравнително тестване?
Бенчмарк тестване измерва повторяем набор от количествено измерими резултати, който служи като отправна точка, спрямо която могат да се сравняват продукти/услуги. Целта на резултатите от бенчмарк тестовете е да се сравнят настоящите и бъдещите версии на софтуера със съответните им бенчмаркове.
Еталон трябва да бъде повторяем. Например, при всяка итерация на теста за натоварване, ако времето за реакция варира твърде много, производителността на системата трябва да бъде сравнена. Времето за реакция трябва да е стабилно при различни условия на натоварване.
Еталон трябва да бъде количествено измерими. Например, потребителското изживяване не може да бъде количествено определено в числа, но времето, което потребителят прекарва на уеб страница поради добрия потребителски интерфейс, може да бъде количествено определено.
Бенчмарк тестване не е термин, свързан само с тестване на софтуер, но също така се занимава с тестване на хардуер и се смята за една от най-важните задачи в света на бизнеса.
В този урок ще обсъдим бенчмаркове за приложение клиент-сървър или, с други думи, уеб приложение. Сравнителното тестване може да се направи за следните услуги,
- Съвместимост с браузъра
- Счупени връзки
- HTML съответствие
- Време за зареждане
- Достъпност
- Популярност на връзката
Защо бенчмарк тестването е важно?
На ниво бизнес сравнителното тестване може да бъде полезно при определяне
- Колко добре се представя едно уеб базирано приложение по отношение на конкурентите
- Как различните видове клиенти усещат времето за реакция и наличността на даден сайт
- Той гарантира, че уебсайтовете отговарят на стандартите и най-добрите практики
- Позволява да се оценят доставчици на услуги трети страни, преди да се вземе решение за сключване на договор
- Позволява да се разберат грешките, които трябва да се избягват
Създаване на тестов план за бенчмарк
Планът за тестване е най-важният елемент от процеса на тестване на бенчмарк. Планът за сравнителен тест следва стъпките, дадени по-долу-
- Мащабиране и извикване на натоварване
- Събирайте и съхранявайте мерки за сравнително тестване
- Определете необходимия период от време и крайната точка на тестовия процес
- Подгответе резервен план за преодоляване на всеки нов неуспешен тестов случай
- Решете пълномощията за извикване на прекратяване на крайния процес
Как да направите бенчмарк тестване
Има 4 фази, включени в бенчмарк тестването:
Стъпка 1) Фаза на планиране
- Идентифициране и приоритизиране на стандарти и изисквания
- Определете критерии за сравнение
- Определете процеса на тестване на бенчмарк
Стъпка 2) Фаза на анализ
- Идентифицирайте основната причина за грешката, за да подобрите качеството
- Поставяне на цели за тестовия процес
Стъпка 3) Фаза на интегриране
- Споделете резултатите със заинтересованото лице и получете одобрение
- Установете функционални цели
Стъпка 4) Фаза на действие
- Разработете план за изпитване и документация
- Изпълнете действията, посочени в предишните фази, и наблюдавайте напредъка
- Изпълнявайте процеса непрекъснато
Компоненти на бенчмарк тестване
Различните системи имат различна степен на сложност и изискват различни техники за тестване на приложения.
Има 3 основни компонента на бенчмарк тестването. Те са
- Спецификации на работното натоварване: Определяне на вида и честотата на заявките, които да бъдат подадени към тестваната система.
- Спецификации на показателите: Определете кой елемент да бъде измерен, напр. Скорост на изтегляне
- Спецификация на измерването: Определяне как да се измерват определени елементи, за да се намерят подходящи стойности
Неща, които трябва да вземете предвид при тестване на бенчмарк
За провеждане на успешно сравнително тестване трябва да се вземат предвид следните факти.
- Последователност и контрол са важни мерки за извършване на бенчмарк тестове.
- Разберете системната архитектура, за да проектирате тестови критерии и тестови данни
- Проверете първоначалните статични данни и актуализирайте според броя на потребителите
- Проверете за функционалност „Нулиране“, когато е необходимо, и определете скоростта на транзакция за секунда (това се отнася специално за транзакциите на потребителите срещу база данни)
- Разделете елементите на системата според нейните функционалности
- Всяка система има различна архитектура и дизайн, които трябва да се вземат предвид при извършване на сравнително тестване
- Уверете се, че всички софтуерни компоненти са в работно състояние
- Операционната система и поддържащите драйвери трябва да работят правилно
- Премахнете файловете за предварително извличане и временните файлове от системата, преди да стартирате бенчмарк
- Затворете всички процеси и приложения, работещи във фонов режим
- Проверете за актуализации на операционни системи и реални конфигурации
Бенчмарк тестови рамки
Рамките за сравнително тестване помагат да се изпълнят някои основни задачи за проверки на производителността. Тези основни задачи включват-
- Достъп до база данни
- Композиция от страна на сървъра
- JSON сериализация
- Конфигурация
Benchmark Framework 2.0 & TechEmpower се използват предимно рамки за бенчмарк тестване.
Нека да разгледаме TechEmpower. Ще хвърлим бърз поглед на основните му характеристики.
- Това е рамка с отворен код за изпълнение на бенчмарк задачи
- Нуждае се от правилната конфигурация на средата за сравнителен анализ
- Има основно два режима като напр Режим на бенчмарк за сравняване на резултатите и Режим на проверка за тези, които не са експерти
- Необходими са няколко файла, които са уникални и могат съответно да варират от система на система
- Той включва „Конфигурационен файл за сравнителен анализ“, който дефинира набор от тестови инструкции и метаданни за програма за сравнителен анализ
- Базиран е на няколко езика като напр Java, Python, Ruby, PHP, JavaСкрипт, Perl, C, Groovy, Haskell, Scala и др.
- Object – Relational Mapper (ORM) се използва за извършване на тестове на бази данни, JSON сериализация и др.
Инструменти за сравнително тестване
Инструментите за сравнително тестване се категоризират съответно. Ще се записваме един по един.
Инструменти за тестване Windows Компютри:
Инструменти за тестване на производителността на процесора:
- Cinebкотва
- Geekbench
Инструменти за тестване на скоростта на системата и батериите на мобилното устройство:
- Phoronix (Linux)
- процесор UserBenchmark (CPU Benchmark тест)
- Vellamo (производителност при сърфиране в мрежата)
Бенчмарк тестване може да се извърши и с Android телефони и таблети. Сред всички, парола е добре известен и широко използван инструмент за бенчмарк тестване.
Oбобщение
- В софтуерното инженерство сравнителното тестване дава повторяем набор от количествено измерими резултати за производителността на дадена система.
- Полезно за упражняване на условията на натоварване и определяне на поведението на системата срещу DDoS атаки.
- Спецификациите на работното натоварване, показателите и спецификациите за измерване са основни компоненти на сравнителното тестване.
- Няколко инструмента и рамки се използват за извършване на бенчмарк тестване бързо и ефективно.
- Бенчмарк тестването също е полезно за мобилни устройства.

