stability testing software testing
Изпитването за стабилност е част от тестването на ефективността. Този урок обяснява целите, значението и необходимостта от тестване на стабилност с примери:
Изпитването за стабилност е „Нефункционално“ тестване. Тук екипът не тества характеристиките и основната функционалност на сайта; но тества характеристиките на софтуерния продукт като „стабилност“, „обработка на грешки“, „надеждност“ и стабилност на продукта.
Нека помислим за човек, който купува нов продукт от пазара ( Например, мобилен телефон). Купувачът ще очаква продуктът да работи равномерно за дълго време, без никакви грешки. По същия начин потребителите на уебсайта и мобилното приложение ще очакват съответният уебсайт или мобилни приложения да работят с висока надеждност и стабилност.
Сега, да разгледаме случая с потребители, които се опитват да закупят стоки от портали за електронна търговия. Ако огромен брой потребители използват един и същ портал едновременно, шансовете за влошаване на производителността на уебсайта са големи. Потребителите могат също да изпитат бавно време за реакция или дори изтичане на памет по време на сесията.
Тези проблеми пораждат заплахи както за разработчиците, така и за заинтересованите страни. Отговорността на екипа за тестване е да открие тези проблеми и да докладва на екипа за разработка, преди да достигне до крайните потребители. Този тип тестване ще бъде подложен на тестване на производителността. Изпитването за стабилност е част от тестването на производителността.
Какво ще научите:
Преглед на изпитването за стабилност
Както беше споменато по-рано, тестването за стабилност също се определя като „нефункционално“ тестване. Тук екипите за тестване проверяват надеждността, обработката на грешки, надеждността и стабилността на продукта.
Това тестване се нарича още „Тестване на издръжливост“ или „Тестване на накисване“. Известно е още като „Тестване на екстремно натоварване“.
При този тип тестване тестерите ще проверят как реагира онлайн порталът, когато много активни потребители използват уебсайта едновременно. Тестерите също трябва да проверят реакцията на системата в такава среда.
В много случаи уебсайтовете трябва да работят непрекъснато в продължение на седмици (дори месеци), без възможност за рестартиране на сървъра. Активните потребители на такива уебсайтове (потребители, които използват уебсайта в момента) могат да бъдат огромни и всеки потребител ще очаква безпроблемна работа.
Ролята на тестерите е да осигурят доверие на разработчиците и да гарантират на крайните потребители, че могат да използват система с вдлъбнатина, без повреда или изтичане на памет дори при голям трафик. За тази цел приложението е подложено на максимално натоварване (до точката на прекъсване на приложението) и поведението на системата се проверява при такива условия.
Това тестване обикновено се извършва преди пускането на софтуера. Тестерите трябва да гарантират, че приложението е в състояние да се справи с очакваното натоварване на уебсайта. Понякога системата може да се срине поради тежък товар или може да стане бавна или дори да показва неочаквано поведение.
Софтуерната стабилност силно зависи от безпроблемната работа на системата при гореспоменатите стресови условия. Така че тестването за стабилност играе много важна роля.
Цели на изпитването за стабилност
Целите са изброени по-долу:
- За да намерите трайността на системата.
- Намерете стабилността на приложението и по този начин повишете доверието на разработчика.
- Намерете дефекта в системата в стресова среда.
- Цялостна оценка и ефективност на продукта.
- За да сте сигурни, че системата може да се справи с голяма програма.
- За да тествате времето за реакция на приложение.
- За да проверите свързаността на базата данни.
Факти за тестването за стабилност
Някои полезни факти са изброени по-долу:
- Изпитването за стабилност изисква подходяща среда за тестване.
- За да се получат по-добри резултати, тестването за стабилност се нуждае от добре планиран и структуриран подход.
- Това отнема много време. Времето, необходимо за процеса на тестване, може да варира в зависимост от изискванията на клиента, вида на продукта и фирмените политики.
- Изолирането на системата е важно при тази форма на тестване. Докато правите тестване за стабилност на приложението, има шансове данните да се загубят или повредят трайно.
- Изпитването за издръжливост може да доведе до откази на компонентите на приложението, така че крайните потребители могат да наблюдават необработени изключения.
Разлика между стабилност и надеждност в софтуерната система
Съществува съществена разлика между надеждността и стабилността в софтуерно приложение. Това може да се обясни с помощта на пример.
Пример:
Помислете, че потребител е инсталирал ново приложение на мобилния си телефон и го е стартирал. Ако инсталираното приложение се срива след всеки 3 минути употреба, това със сигурност ще дразни потребителя. Но ако потребителят може да възстанови данните без загуба след повторно стартиране на приложението, приложението няма да загуби своята надеждност. Такова приложение може да се счита за надеждно, но не може да се счита за стабилно.
как да инициализирам списък в java -
От друга страна, вземете сценария, при който данните на приложението не се записват правилно. Тук приложението функционира добре и не се срива (като на всеки 3 минути). Такова приложение може или не може да се счита за надеждно, но може да се счита за „стабилно“.
Надеждността и стабилността са като две страни на една и съща монета. Така че просто помнете факта, че както надеждността, така и стабилността са важни за даден продукт от гледна точка на бизнеса.
Примери за изпитване за стабилност:
Често срещан подход е, че когато потребителят закупи нов мобилен телефон, той / тя съзнателно или несъзнателно извършва тест за стабилност. Потребителят ще запази много изображения, снимки, видеоклипове, документи и т.н. в паметта на устройството и ще провери дали твърде много съхранени данни са повлияли на работата на устройството или не. Това е конкретен пример за тестване на стабилност.
Поради огромни съхранени данни, нашето устройство може понякога да затвори, тогава потребителят трябва да изтрие някои данни или да изчисти временните файлове, за да накара устройството да възвърне ефективността си. След това тестване потребителят ще има ясна представа за капацитета на системата.
Друг пример в реално време са онлайн порталите за покупки. По време на сезон на „продажба / фестивал“ много хора купуват стоки от този тип уеб портали. Ефективността на уебсайта трябва да отговаря на очакванията на потребителите.
Така че тестерите трябва да тестват сайта, като имат предвид очакваната „бързина“, която е вероятно да се случи в тези сайтове през тези дни.
Тестване на стабилност на интернет връзка
Тук тестовият случай ще бъде да проверим колко стабилна е нашата интернет връзка. Докато установяват връзка през интернет и искат уеб страници, поради загуба на пакети, потребителите трябва да страдат от непостоянно забавяне при преглеждането на уеб страници.
Понякога загубата на пакети възниква, когато не успее да достигне целта. Поради загуба на пакети много от нас може да са се сблъсквали с подобни проблеми, докато използваме видеообаждания по Skype, играем игри през интернет или случайно сме изключени от интернет.
Предпоставки за тестване на интернет свързаност:
- За да тестваме стабилността на интернет, трябва да имаме уеб браузър, в който защитната стена е деактивирана.
- Изберете уеб адрес ( Например, https://www.google.com/ ), което е малко вероятно да се провали.
- Използвайте Google Spreadsheet или Microsoft Excel, за да запишете резултата, тъй като е лесен за разбиране и по-четлив за потребителите.
- Проверете още веднъж интернет връзката, устройствата и проверете връзките отново. След това ще извършим споменатите по-долу тестове.
Методи, използвани за тестване на интернет свързаност:
Най-добрият начин да тествате свързаността е да посетите SpeedTest (преди допълнително четене, моля, посетете сайта). В SpeedTest.net имаме възможност за избор на сървъри. Изберете и стартирайте сървъра, който е близо до вас.
След това сайтът ще извърши някои изчисления въз основа на някои предварително дефинирани алгоритми и ще покаже отчета, който веднага определя качеството на нашата интернет връзка. В отчета е включен процентът на загуба на пакети. Би трябвало да е „0%“.
Загубата на пакет „0%“ определя високата стабилност на връзката. Всяко число, по-голямо от „0“, показва, че свързаността е нестабилна.
Вторият начин е да използвате „cmd“ ред и въведете командата „ping“ (моля, вижте фигурата по-долу). Тук, използвайки командния ред, можем да тестваме стабилността и латентността на интернет и в реално време.
На фигурата, моля, проверете раздела „Ping Statistics“.
Тук,
Брой изпратени пакети = 4
Брой получени пакети = 4
Брой загубени пакети = 0
Резултатът показва, че връзката е много стабилна.
Използван процес:
Етап 1: Тестерите ще изберат някой от двата метода, обяснени по-горе.
Стъпка 2: Тестерите ще стартират процеса и ще запишат необходимата информация, получена като отговор на интернет свързаността, в електронна таблица.
Стъпка 3: Те ще повтарят процеса 3 или четири пъти седмично.
(Тъй като тестването за стабилност се извършва за определен период от време, тестерите ще трябва да планират процеса поне повече от два пъти седмично.)
Стъпка 4: Резултатите се записват в електронни таблици.
Тестерите трябва да запишат датата на стартиране на процеса. Сравнете резултата, получен на всяка дата, за да получите представа за стабилността на текущата ни мрежа.
Забележка: Точка на пречупване е състоянието на системата, при което системата ще се срути, когато й се даде допълнително натоварване. Той определя капацитета на системата.
Спецификационният документ е документ, даден на тестерите от ръководителя на екипа и ще съдържа подробности за очакваното натоварване в системата. При тестване на стабилност тестерите ще проверят точката на прекъсване на системата въз основа на насоките, предоставени им в документацията за спецификация.
Екипът за тестване ще провери системата, като тества приложението с натоварване над / под точката на прекъсване, посочена в документа за спецификация. Това е различно от случая с тестване на товара.
най-добрият безплатен видео конвертор за
При тестване на стабилност ще използваме само очакваното натоварване за тестване, но при тестване на натоварване се дава неочакван товар на приложението и тестерите проверяват капацитета на приложението.
Софтуерно тестване на жизнения цикъл, базиран на тестване за стабилност
Различните фази на Тестване на жизнения цикъл на софтуера са включени по-долу:
- Анализ на изискванията
- План за тестване
- Разработване на тестови казуси
- Тествайте настройката на средата
- Изпълнение на тестови случаи
- Тестово затваряне
Нека разберем подробно всички горепосочени фази.
# 1) Анализ на изискванията
На тази фаза екипът за тестване ще реши различните видове тестове, които ще бъдат извършени в приложението. Това зависи чисто от изискванията на клиента и вида на приложението. Например, тестерите тестват банково приложение, тогава най-приоритетното тестване, в този случай, е тестване на сигурността. Ако тестерите тестват приложение за недвижими имоти, те ще дадат приоритет на функционалното тестване.
# 2) Планиране на теста
На тази фаза се обсъждат обхватите на тестване. Тестерите ще обсъдят необходимостта от автоматизация. За тестване на стабилността тестовите процеси са досадни и трябва да се повтарят многократно за определено време, а автоматизацията ще бъде добър избор. ‘LoadStrom’ е добър инструмент за извършване на тестове за стабилност с помощта на автоматизация.
На тази фаза ще обсъдим бюджета и срока за тестване с клиента. Тъй като тестването отнема много време, бюджетът и срокът трябва да отговарят на плана за тестване.
# 3) Разработване на тестови случаи
В тази фаза се създава тестов случай за тестване на приложението.
# 4) Тестова среда
безопасна програма за изтегляне на видеоклипове в YouTube
Тестовата среда е жизненоважен фактор за тестване на стабилността. Нуждаем се от подходяща тестова среда, която е реплика на нашата производствена среда. Оригиналната среда трябва да бъде неизползвана, тъй като по време на тестването сайтът понякога може да се срине или дори да загуби данни.
# 5) Изпълнение на теста
В тази фаза се изпълняват тестови случаи и се проверяват резултатите от теста. Това е отнемаща време фаза. Общите проблеми, пред които са изправени тестерите в тази фаза, са изтичане на памет, проблеми с връзката на данни, бавно време за реакция и т.н.
# 6) Тестово затваряне
На тази фаза всички членове на екипа ще се срещнат и ще обсъдят критериите за изход, използвани в проекта. Критериите за изход зависят от фактори като броя на откритите дефекти и времето, използвано при тестване.
Инструменти, използвани при тестване на стабилност
Използват се следните инструменти:
- LoadRunner
- OpenSTA
- LoadUI
- УЕБОЛОД
- LoadComplete
- Appvance
- LoadUI
- Тестер за рационално представяне
Как да използвам Apache JMeter за тестване на издръжливост?
Apache JMeter е добър инструмент за тестване на издръжливост. Преди да започнат тестването, тестерите трябва да имат добри познания за бизнес целите. След това тестерите ще създадат тестови скриптове. След това ще конфигурираме настройките на групата нишки в JMeter.
Докато правим тестове за издръжливост с помощта на JMeter, трябва да посочим следните фактори:
- Броят на нишките: Това показва очаквания брой потребители на сайта.
- Период на нарастване: Това показва времето, необходимо на всяка нишка да завърши. Ако имаме 5 нишки, периодът на нарастване е 50 секунди.
- Брой цикли: Това показва колко пъти процесът се повтаря. За тестване на издръжливост е настроен завинаги.
- Планировчик: При това тестване ще използваме функционалността на планировчика. Трябва да посочим конфигурацията на планировчика според изискването.
Заключение
Много приложения са неправилно проектирани и не освобождават паметта на устройството след употреба. Това постепенно ще доведе до загуба на паметта. Можем да преодолеем проблема с тестване за стабилност. И така, тестването за стабилност е много важно. Това е нефункционално тестване. Той се занимава само с характеристиките на приложението. Тук тестването не е свързано с поведението на системата.
Надявам се, че сте разбрали важността и необходимостта от тестване за стабилност.
Препоръчително четене
- Тестване на софтуер QA Assistant Job
- Курс за тестване на софтуер: Към кой институт за тестване на софтуер трябва да се присъединя?
- Тестване на софтуер Техническо съдържание Writer Работа на свободна практика
- Изборът на софтуерно тестване като кариера
- Съвети за тестване на софтуер за начинаещи тестери
- Обратна връзка и рецензии на курсове за софтуерно тестване
- Как да запазите мотивацията жива в софтуерните тестери?
- Какво е тестване на маймуни при тестване на софтуер?