configuration testing tutorial with examples
Въведение в тестването на конфигурацията на софтуера:
Тази статия е предоставена на вас, за да обсъдите специален тип тестване на софтуер, който е много важен за бизнеса.
Ще обсъдим основите на тестването на конфигурацията, неговите нужди, значение, цели и видове. Тъй като ще напредваме в статията, ще научим подробно как да извършим това тестване.
Нека започнем !!
Този урок ще ви даде пълен преглед на тестването на конфигурацията и ще действа като перфектен наръчник за всеки, който е нов в тази концепция за тестване и ще подобри знанията на тези, които вече имат опит в нея.
Какво ще научите:
- Какво е тестване на конфигурацията?
- Защо това тестване?
- Подготовка за тест за конфигурация
- Microsoft VSTS - инструмент за тестване на конфигурация
- Цели
- Видове тестване на конфигурацията
- Значение на това тестване за предприятие
- Заключение
- Препоръчително четене
Какво е тестване на конфигурацията?
Тестването на конфигурацията е метод за тестване на система в процес на разработка на множество машини, които имат различни комбинации или конфигурации на хардуер и софтуер. Ефективността на системата или приложението се тества спрямо всяка от поддържаните хардуерни и софтуерни конфигурации.
Когато казваме различни конфигурации на хардуер и софтуер, това се приписва на множество версии на операционната система, браузъри, поддържани драйвери, размери на паметта, видове твърди дискове, CPU и т.н.
Защо това тестване?
Както беше обсъдено по-горе, това тестване е техника, която оценява производителността на софтуер, система / приложение, като се отчитат различните системни конфигурации.
Това тестване се прави, за да се определят оптималните конфигурации, при които дадена система или приложение могат да работят добре без никакви грешки, проблеми или недостатъци в производителността. Така че с помощта на това тестване се забелязва най-ефективната конфигурация, която ще осигури необходимите характеристики на производителността.
YouTube към mp3 конвертор, който работи
Втората основна причина за това тестване е да се провери съвместимостта на системата с другия софтуер или оборудване, посочени в SRS (спецификация на софтуерните изисквания).
Пример
Нека разгледаме, че вашето предприятие е разработило десктоп приложение на език C # и това приложение е изградено на .NET рамката.
И това приложение се основава на тристепенна архитектура, която има три слоя - преден край (клиент), приложен слой (сървър) и слой база данни. Всеки от слоевете ще поддържа съответно определени платформи.
Да приемем, че всеки слой поддържа следните платформи:
Клиент - Windows 10 OS, Windows 7, Windows XP, Linux OS.
Сървър - Ubuntu сървър, Windows Server 2016 , Novell Open Enterprise Server .
База данни - Microsoft SQL Server, IBM DB2, MySQL.
Сега, като софтуерен тестер, ще трябва да тествате приложението под всяка от различните комбинации на горепосочените клиентски, сървърни и платформи за бази данни, за да сте сигурни, че приложението работи добре с всяка от възможните конфигурации.
Например , ще проверите как приложението работи с комбинацията от Windows 10 OS, Windows Server 2016 & MySQL база данни, след което ще извършите още един тест, за да проверите как работи приложението с комбинацията от Windows 10 OS, Windows Server 2016 и IBM DB2 база данни.
И така, докато не тествате всички възможни конфигурации.
Нашето тестване не само ще бъде ограничено до софтуера, но ще обхване и хардуера, където ще трябва да проверим всяка от комбинациите на различни хардуерни устройства. Следователно понякога това тестване се нарича и тестване на хардуерна конфигурация.
Подготовка за тест за конфигурация
Това тестване има определени предпоставки, които трябва да бъдат изпълнени, преди да изпълним тестовете за конфигуриране.
По-долу са посочени предпоставките:
# 1) Подготовка на матрицата за покритие
Благодарение на огромен брой възможни хардуерни и софтуерни конфигурации, става много трудоемко и почти невъзможно да се тества ефективно всяка от конфигурациите.
Например , в примера, който обсъдихме по-горе, ще имаме общо 3 * 3 * 3, т.е. 27 софтуерни конфигурации. Да предположим, че имаме 5 различни твърди диска и 6 различни размера на паметта. След това броят ще премине към 27 * 5 * 9, т.е. 810 конфигурации сега.
Това ще продължи да се увеличава, ако добавим повече компоненти към картината. Така че става изключително важно да се планира усилията за тестване на софтуера и да се определи ясно кои платформи ще се поддържат.
какви са фазите на жизнения цикъл на разработването на софтуер
След това трябва да измислим матрица за покритие, която да съдържа различните комбинации от хардуерни и софтуерни конфигурации. Понякога тази матрица на покритие е известна също като BCM (Basic Configuration Matrix).
Горната фигура показва примерна схематична матрица от конфигурации, които искате да тествате.
# 2) Приоритизиране на конфигурациите
След като конфигурационната матрица е подготвена, следващата стъпка е да се даде приоритет на конфигурациите.
Тази стъпка е необходима, защото е невъзможно да се тества цялата огромна гама от конфигурации. Така че, въз основа на обратната връзка с клиента, са включени най-критичните конфигурации и те първо трябва да бъдат тествани щателно.
След като приключим с горните две стъпки, можем да продължим с тестването на различните конфигурации въз основа на техния приоритет.
Microsoft VSTS - инструмент за тестване на конфигурация
Услугите на Microsoft Visual Studio Team Services (VSTS) е инструмент, който значително помага при тестване на вашето приложение при различни конфигурации въз основа на вашия план за тестване.
Трябва да имате план за тестване, за да решите кои тестове искате да изпълните и на кои конфигурации. Трябва да се уверите, че сте настроили подходящата среда за конфигурациите, които ви трябват. След като имате матрицата на комбинациите, трябва да я тествате.
Можете да следвате стъпките по-долу, за да извършите това тестване:
# 1) Настройте конфигурациите и създайте променливите. Променливата е един от компонентите във вашата конфигурация.
Например , може да има променлива „Браузър“, която може да има множество стойности като Chrome, Firefox, IE10 и т.н.
# две) Задайте конфигурациите на плановете за тестване / тестовите комплекти или отделни тестови случаи.
# 3) Изпълнете тестовете спрямо всяка конфигурация.
# 4) Проследете резултатите от теста за всяка от конфигурациите.
Подробно ръководство стъпка по стъпка за извършване на това тестване с VSTS можете да видите тук: VSTS - Тествайте различни конфигурации
Цели
По-долу са дадени различните цели на това тестване:
- За да се определи оптималната конфигурация на AUT (Приложение в тест).
- За да откриете скритите уязвимости, съдържащи се в хардуера.
- За да се осигури непрекъснатост на бизнеса чрез откриване и отстраняване на проблемите, преди те да попречат на бизнес операциите.
- За да се елиминира отклонението на конфигурацията.
- За да минимизирате броя на неуспехите поради грешки в конфигурацията на хоста.
- Проверка на приложението, за да се увери, че отговаря на конфигурируемостта.
- Да се анализира производителността на системата чрез добавяне, премахване или модифициране на хардуерни компоненти ( E.g . Вариране на размерите на паметта, добавяне на балансьори на натоварване и др.).
- За да проверите дали системата работи добре в географски разпределена среда (сървърите и клиентите са разположени на различни места).
- Проверка на това колко лесно могат да се репликират грешките, независимо от промените в конфигурацията.
- За да проверите колко проследими и управляеми са елементите на приложението.
Видове тестване на конфигурацията
Можем да имаме две различни линии на разделите за това тестване.
На първа линия , може да се раздели на две части:
- Тестване на софтуерна конфигурация
- Тестване на хардуерна конфигурация
На втори ред , може отново да се раздели на две части - 1. Тестване на ниво клиент и 2. Тестване на ниво сървър
Като начало нека видим за хардуерната и софтуерната конфигурация.
# 1) Тестване на конфигурацията на софтуера:
Това тестване се извършва през AUT (тествано приложение) с множество версии на операционната система, актуализации на софтуера и т.н. Това е дългосрочно тестване, тъй като отнема огромно време за инсталиране и деинсталиране на различния софтуер, който трябва да се използва за тестване.
Един от подходите за спестяване на време е да се използват виртуални машини за тестване на софтуерната конфигурация. VM симулира конфигурации в реално време и дава същото усещане като на физическа машина.
Така че, вместо да инсталираме и деинсталираме множествения софтуер на една физическа машина, можем да имаме множество виртуални машини, симулиращи всяка различна конфигурация, спрямо която трябва да направим тестването.
Тестването на софтуерната конфигурация започва, след като компилацията бъде освободена след преминаване през модулния тест и теста за интеграция.
# 2) Тестване на хардуерна конфигурация:
Тестването на хардуерната конфигурация обикновено се извършва в лаборатории, където имаме физически машини с различен хардуер, свързан с тях.
Всеки път, когато се пусне компилация, софтуерът трябва да бъде инсталиран във всички физически машини, към които е прикрепен хардуерът, а тестовият пакет трябва да бъде изпълнен на всяка машина, за да се потвърди, че приложението работи нормално.
За изпълнение на горепосочената задача са необходими значителни усилия за настройване на софтуера на всяка машина, свързване на хардуера към нея и след това ръчно изпълнение на тестовите пакети. Дори ако автоматизираме тази задача и стартираме тестовия пакет, дори тогава ще са необходими значителни усилия.
Също така, както вече обсъждахме в предишната част на тази статия, докато правим тест за хардуерна конфигурация, ние посочваме вида на хардуера, който трябва да бъде тестван, и има множество компютърни хардуер и периферни устройства, които правят почти невъзможно изпълнението на всички тестове.
И така, тестер анализира кой хардуер се използва главно от клиента и след това провежда тестването въз основа на приоритизирането.
Сега нека обсъдим тестване на ниво клиент и ниво сървър.
# 1) Тестване на ниво клиент : Той има общо с тестването на използваемост и функционалност. Това тестване се извършва от гледна точка на интересите на директния потребител.
# 2) Тестване на ниво сървър : Този тип тестване се прави, за да се изследва взаимодействието между софтуера и външната среда, когато се планира да бъде интегриран след пускане.
Значение на това тестване за предприятие
Това тестване е много важно за предприятието да излезе и да поддържа високоефективни, мащабируеми и налични приложения.
Това тестване трябва да се извършва непрекъснато и за предпочитане автоматизирано (в противен случай отнема много време, когато се извършва ръчно) с намерението за бързо идентифициране и коригиране на факторите, които допринасят за неефективността.
11 НАЙ-ДОБРИ инструмента за управление на конфигурацията на софтуера (SCM Tools през 2020 г.)
Заключение
Тестването на конфигурацията е толкова важно, колкото всеки друг тип тестване на софтуер, тъй като открива оптималната конфигурация на системата, при която приложението се представя в най-добрия случай. Освен това помага за идентифициране и отстраняване на проблеми със съвместимостта.
В тази статия научихме какво е тестване на конфигурацията, защо извършваме това тестване, какви са неговите цели, какви са неговите типове, какви са предпоставките за това тестване, как трябва да се направи, колко важно е за предприятие и др., по подробен начин.
c ++ двойно свързан списък
Надявам се, тази статия е информативна и ще ви донесе добра представа за тестването на конфигурацията.
Препоръчително четене
- Най-добри инструменти за тестване на софтуер 2021 г. (Инструменти за автоматизация на QA теста)
- Функционално тестване срещу нефункционално тестване
- Учебник за тестване по двойки или за всички двойки с инструменти и примери
- Тестване на софтуер QA Assistant Job
- Урок за тестване на обем: Примери и инструменти за тестване на обем
- Урок за деструктивно изпитване и безразрушително тестване
- Уроци за задълбочено затъмнение за начинаещи
- Какво е тестване за издръжливост при тестване на софтуер (примери)