Тестване на конфигурацията
Тестване на конфигурация е техника за тестване на софтуер, при която софтуерното приложение се тества с множество комбинации от софтуер и хардуер, за да се оценят функционалните изисквания и да се открият оптимални конфигурации, при които софтуерното приложение работи без никакви дефекти или недостатъци.
Както беше обсъдено по-горе, тестването на конфигурацията е софтуерно тестване, при което тестваното приложение трябва да бъде тествано с помощта на множество комбинации от софтуер и хардуер.
В този урок ще научите -
- Какво е тестване на конфигурацията?
- Пример за тестване на конфигурация
- Предварителни условия за тестване на конфигурацията
- Цели на тестването на конфигурацията
- Как да направите тестване на конфигурацията
- Примерни тестови случаи
Пример за тестване на конфигурация
Нека разберем това с пример за настолно приложение:
Като цяло приложенията за настолни компютри ще бъдат от 2 или 3 нива, тук ще разгледаме приложение от 3 нива за настолни компютри, което е разработено с помощта на Asp.Net и се състои от клиент, сървър за бизнес логика и сървър за бази данни, където всеки компонент поддържа платформите по-долу.
- Клиентска платформа - Windows XP, Windows 7 OS, Windows 8 OS и т.н.
- Сървърна платформа - Windows Server 2008 R2, Windows Server 2008 R2, Windows Server 2012R2
- База данни -SQL Sever 2008, SQL Server 2008R2, SQL Server 2012 и др.
Тестерът трябва да тества комбинацията от клиент, сървър и база данни с комбинации от гореспоменатите платформи и версии на базата данни, за да гарантира, че приложението функционира правилно и не се проваля.
Тестването на конфигурацията е ограничено не само до Софтуер, но е приложимо и за Хардуер, поради което се нарича и Тестване на хардуерна конфигурация, където тестваме различни хардуерни устройства като принтери, скенери, уеб камери и др., Които поддържат тестваното приложение.
Предварителни условия за тестване на конфигурацията
За всеки проект, преди да започнем с теста за конфигуриране, трябва да спазим някои предварителни условия
- Създаване на матрица, която се състои от различни комбинации от софтуерни и хардуерни конфигурации
- Приоритизиране на конфигурациите, тъй като е трудно да се тестват всички конфигурации
- Тестване на всяка конфигурация въз основа на приоритизиране.
Цели на тестването на конфигурацията
Целите на тестването на конфигурацията са да
- Проверка на приложението, за да се определи дали отговаря на изискванията за конфигуриране
- Ръчно причиняване на откази, които помагат за идентифициране на дефекти, които не са ефикасно открити по време на тестването (напр. Промяна на регионалните настройки на системата като часови пояс, език, формати за дата и др.)
- Определете оптимална конфигурация на тестваното приложение.
- Анализиране на производителността на системата чрез добавяне или модифициране на хардуерни ресурси като Load Balancers, увеличаване или намаляване на размера на паметта, свързване на различни модели принтери и др.
- Анализиране на ефективността на системата въз основа на приоритизирането, колко ефективно са извършени тестовете с наличните ресурси за постигане на оптимална конфигурация на системата.
- Проверка на системата в географски разпределена среда, за да се провери колко ефективно системата се представя.
За Ex: Сървър на различно място и клиенти на различно място, системата трябва да работи нормално, независимо от системните настройки.
- Проверка колко лесно се възпроизвеждат грешките, независимо от промените в конфигурацията.
- Гарантиране на проследимостта на елементите на приложението чрез правилно документиране и поддържане на версиите, които са лесно разпознаваеми.
- Проверка на управляемостта на елементите на приложението през целия жизнен цикъл на разработката на софтуер.
Как да направите тестване на конфигурацията
В този раздел ще обсъдим стратегията, която трябва да се следва за типовете тестване на конфигурацията и има два вида тестване на конфигурацията, както е споменато по-долу
- Тестване на конфигурацията на софтуера
- Тестване на хардуерна конфигурация
Тестване на конфигурацията на софтуера
Тестването на софтуерната конфигурация тества тестваното приложение с множество ОС, различни софтуерни актуализации и др. Тестването на софтуерната конфигурация отнема много време, тъй като отнема време за инсталиране и деинсталиране на различен софтуер, който се използва за тестването.
Един от подходите, който се следва за тестване на конфигурацията на софтуера, е тестване на виртуални машини. Виртуалната машина е среда, която е инсталирана на софтуер и действа като физически хардуер и потребителите ще имат същото усещане като на физическа машина. Virtual Machines симулира конфигурации в реално време.
Вместо да инсталирате и деинсталирате софтуера в множество физически машини, което отнема много време, винаги е по-добре да инсталирате приложението / софтуера във виртуалната машина и да продължите да тествате. Този процес може да се извърши с множество виртуални машини, което опростява работата на тестера
Тестването на софтуерната конфигурация обикновено може да започне, когато
- Посочени са изисквания за конфигуриране, които ще бъдат тествани
- Тестовата среда е готова
- Екипът за тестване е добре обучен за тестване на конфигурацията
- Пуснатата компилация е единица и тестът за интеграция е преминал
Типичната тестова стратегия, която се следва за тестване на теста за конфигурация на софтуера, е да стартира функционалния тестов пакет в множество софтуерни конфигурации, за да провери дали тестваното приложение работи по желание, без никакви недостатъци или грешки.
Друга стратегия е да се гарантира, че системата работи нормално, като ръчно се провалят тестовите случаи и се проверява за ефективността.
Пример:
Да приемем, че има приложение за банкиране, което трябва да бъде тествано за неговата съвместимост в множество браузъри, когато приложението се хоства в среда, в която са налице всички предпоставки, че може да премине тестването на модула и интеграцията в тестовата лаборатория.
Но ако същото приложение е инсталирано на клиентско място и на машините липсват някои актуализации на софтуера или версиите, от които приложението зависи пряко или косвено, има вероятност приложението да се провали. За да се избегне такъв тип ситуация, винаги се препоръчва да се провалят тестовете ръчно, като се премахнат някои от изискванията за конфигуриране и след това да се продължи с тестването.
Тестване на хардуерна конфигурация
Тестването на хардуерна конфигурация обикновено се извършва в лаборатории, където намираме физически машини с различен хардуер, прикрепен към тях.
Всеки път, когато е издадена компилация, софтуерът трябва да бъде инсталиран във всички физически машини, към които е прикрепен хардуерът, и тестовият пакет трябва да се изпълнява на всяка машина, за да се гарантира, че приложението работи нормално.
За изпълнение на горната задача са необходими значителни усилия за инсталиране на софтуера на всяка машина, прикачване на хардуера и ръчно стартиране или дори за автоматизиране на гореспоменатия процес и стартиране на тестовия пакет.
Също така, докато провеждаме тест за хардуерна конфигурация, ние посочваме вида на хардуера, който трябва да бъде тестван, и има много компютърен хардуер и периферни устройства, които правят напълно невъзможно да се изпълняват всички тях. Така че задължението на тестера е да анализира какъв хардуер се използва най-вече от потребителите и да се опита да направи тестването въз основа на приоритизирането.
Примерни тестови случаи
Помислете за банков сценарий, за да тествате хардуерната съвместимост. Банково приложение, което е свързано с машина за преброяване на бележки, трябва да бъде тествано с различни модели като Rolex, Strob, Maxsell, StoK и др.
Нека вземем няколко примерни тестови случая, за да тестваме машината за преброяване на бележки
- Проверка на връзката на приложението с модела Rolex, когато предпоставките НЕ са инсталирани
- Проверка на връзката на приложението с модела Rolex, когато са инсталирани предпоставките
- Проверете дали системата брои бележките правилно
- Проверете дали системата брои бележките неправилно
- Проверка на фалшифицираните бележки
- Проверка на времето за реакция
- Проверка дали фалшивите бележки са открити и т.н.
Горните тестови случаи са за един модел и едни и същи трябва да бъдат тествани с всички модели, предлагани на пазара, като се създадат в тестова лаборатория, което е трудно. Следователно е препоръчително тестването на хардуерната конфигурация да бъде възложено на организации, които ги специализират.
Резюме:
В софтуерното инженерство тестването на конфигурацията трябва да се дава с еднаква важност като другите видове тестване. Без да се извършва тестване на конфигурацията, е трудно да се анализира оптималната производителност на системата, а също така софтуерът може да срещне проблеми със съвместимостта, на които се предполага, че ще работи.