portability testing guide with practical examples
Въведение в тестването за преносимост:
Изпитването за преносимост е нефункционална методология за тестване, която определя лекотата или трудността, с която софтуерен компонент или приложение могат да бъдат преместени от една среда в друга.
Резултатите от теста, получени от теста за преносимост, помагат да се установи колко лесно софтуерен компонент от една среда може да се използва в друга среда.
Терминът „среда“ се отнася до преминаване от една операционна система към друга операционна система, един браузър към друг браузър или от една версия на базата данни към друга версия на базата данни.
Основно правило за тестване на преносимост е, че то трябва да се използва само ако софтуерният компонент трябва да бъде преместен от една среда в друга среда.
Измерването на преносимостта е усилието, необходимо за преместване на софтуерния компонент от една среда в друга среда. Една единица за измерване на преносимост са разходите за въвеждане на софтуер в новата среда в сравнение с разходите за преработка на софтуера.
Този урок ви дава пълен преглед на значението, целите, атрибутите, контролния списък, предимствата и недостатъците на тестването на преносимост, заедно с някои практически примери с прости термини за вашето лесно разбиране.
Какво ще научите:
- Разлика между тестване на преносимост и съвместимост
- Цели
- Атрибути
- Контролен списък за тестване на преносимост
- Предимства и недостатъци
- Примери за тестване на преносимост
- Заключение
- Препоръчително четене
Разлика между тестване на преносимост и съвместимост
Точките, дадени по-долу, ще разграничат накратко разликите между преносимост и съвместимост.
=> Съвместимостта се занимава с това дали два или повече компонента могат да се изпълняват едновременно в една и съща среда, без да се отразява неблагоприятно на поведението един на друг.
Пример: За текстов процесор и калкулатор, работещи на една и съща операционна система, като Windows 10, може да се каже, че са съвместими помежду си, тъй като стартирането на едно приложение няма да повлияе на поведението на другото приложение.
=> Преносимостта се занимава с преместване на компонента от една среда в друга.
Пример: За игра, работеща под Windows XP, се казва, че е преносима, ако същата игра може да се изпълнява на Windows 7 без промяна в поведението на играта.
=> Накратко, тестването за преносимост се занимава със софтуерни компоненти в множество среди, докато тестването за съвместимост се занимава с тестване на две различни приложения в една и съща среда.
Цели
По-долу са поставени целите на това тестване:
- Определете дали дадена система може да бъде пренесена към всяка от характеристиките на околната среда, като скорост на процесора, дисково пространство и RAM, разделителна способност на монитора, версии на ОС и браузър.
- Определете дали външният вид и усещането на приложението по отношение на потребителския интерфейс и функционалните функции са подобни на множество ОС и множество браузъри.
- Това тестване помага да се определи дали системата може да бъде готова за пускане, особено когато е наясно, че клиентите на продукта ще използват множество операционни системи с множество версии на браузъра.
- Това тестване обикновено се извършва спрямо предварително определен набор от изисквания за преносимост, които помагат да се открият дефектите, които са пропуснати като част от модула и тестването на интеграцията на приложението.
- Дефектите, открити при това тестване, трябва да бъдат отстранени и доставени като част от изданието на продукта от разработчиците.
- Това тестване обикновено се извършва постепенно през целия жизнен цикъл на разработката на софтуер.
Атрибути
Съветът за тестване на софтуер е определил някои основни атрибути на това тестване.
Те са:
- Инсталируемост
- Адаптивност
- Сменяемост
- Съвместимост или съжителство
# 1) Инсталируемост:
Инсталируемостта се извършва на софтуер, който трябва да бъде инсталиран в целева среда.
Следните характеристики са валидирани като част от теста за инсталиране:
- Изисквания към операционната система за инсталиране.
- Изисквания за браузъра за използване на приложение.
- Изисквания за памет или RAM.
- Процедура за инсталиране.
- Процедура за деинсталиране.
- Изключения при прекъсване на инсталацията.
- Предварителни условия за инсталиране на софтуер.
# 2) Адаптивност:
Тестването на адаптивност е процес на валидиране, ако системата е адаптивна към всяка от целевите среди. Използването на общи комуникационни стандарти между множество системи може да помогне за подобряване на адаптивността на системата като цяло.
Изпитването за адаптивност включва следните характеристики:
- Хардуерна зависимост.
- Софтуерна зависимост.
- Стандартен език.
- Комуникация на системата с всяка от целевите среди.
- Капсулиране на зависимост.
- Представяне на зависимост в множество системи.
# 3) Сменяемост:
Сменяемостта е възможността да се замени един софтуерен компонент с другия. Компонентът, който замества предишния компонент, трябва да доведе до същите резултати като предишния компонент във всички целеви среди. В идеалния случай тя трябва да служи на същата цел като заместващия компонент.
Конкурентните продукти от същия домейн ще бъдат идеалните кандидати за заменяемост, тъй като продуктът, който се заменя, може да бъде много по-евтин от съществуващия продукт на конкурент.
# 4) Съвместимост или съжителство:
Съвместимостта е способността на два или повече компонента към съществуващия в една и съща среда, без да влияе неблагоприятно на поведението един на друг. Това тестване е особено полезно в големи системи, които включват множество подсистеми като част от него.
Подсистемите в идеалния случай споделят обща стекова област и памет. В резултат на това възникнало изключение в едната подсистема може лесно да се разпространи в другата подсистема, причинявайки срив на цялото приложение.
Промяната на съществуващия компонент, надстройката до нов компонент, адаптирането на нов интерфейс към съществуващия компонент са всички проблеми, пред които са изправени софтуерните системи с течение на времето.
Компоненти, които се провалят тестване на съвместимостта изискванията оказват дълбоко въздействие върху цялата система и следователно всеки компонент трябва да бъде тестван задълбочено за неговия ефект върху общите ресурси.
Малко други в списъка:
Освен тези основни атрибути, тестването на преносимост може да включва и няколко други атрибута като тестване за оперативна съвместимост и тестване за локализация.
(i) Оперативна съвместимост: Тестването на оперативна съвместимост помага да се определи дали два или повече компонента могат да взаимодействат помежду си, без да има проблем с комуникацията.
Например , трансферът на данни чрез Bluetooth между компютър с Windows 10 и смартфон, базиран на Android, може да бъде взет за тестване на оперативната съвместимост.
(ii) Локализация: Извършва се тестване за локализация, за да се гарантира дали разработеният софтуер може да бъде разбран на местния език, където се използва. Този тип тестване е известен още като интернализация.
Например , софтуерът трябва да бъде тестван на различни международни езици като китайски, италиански, руски и т.н.
Контролен списък за тестване на преносимост
Контролният списък включва изискванията, които трябва да бъдат тествани като част от теста за преносимост.
c ++ генератор на произволни числа между две числа
Преди да продължите с изготвянето на контролен списък, е задължително да се уверите, че всички отделни компоненти на системата са щателно тествани и интегрирани един с друг, за да образуват една голяма система.
Всички цели на теста за преносимост трябва да се имат предвид, за да бъде контролният списък ефективен и ефикасен.
- Това тестване трябва да отговаря на всички изисквания за преносимост.
- Трябва да се извърши тестване на приложението на множество операционни системи.
- Трябва да се извърши тестване на приложението на множество версии на браузъра.
- Това тестване може да бъде автоматизирано за непрекъснато регресивно тестване.
- Това тестване трябва да се извършва постепенно и итеративно през целия жизнен цикъл на разработката на софтуер.
Предимства и недостатъци
Изпитването за преносимост има свои собствени достойнства, както и недостатъци, както всяко друго тестване. Нека ги разгледаме.
Професионалисти:
- Помага при идентифицирането на зависимостите между множество компоненти.
- Това тестване е особено полезно в големи системи, които имат няколко подсистеми, които си взаимодействат.
- Това тестване е за предпочитане, когато клиентите на даден продукт използват множество операционни системи с множество версии на браузъра.
- Грешки, които са пропуснати по време на тестване на модули и интеграция, могат да бъдат разкрити с помощта на това тестване.
- Инсталирането и деинсталирането на софтуер също могат да бъдат тествани като част от това тестване.
- Отзивчивостта и производителността на дадено приложение могат да бъдат тествани в множество браузъри и множество операционни системи.
- Изгледът и усещането на приложението в множество браузъри и множество операционни системи могат да бъдат проверени с помощта на това тестване.
- Това тестване помага да се определи дали функционалността на приложението е както се очаква в множество операционни системи и множество браузъри.
- Той също така помага да се премахне разпространението на грешки между множество системи.
Минуси:
- Това тестване обикновено не е за предпочитане, когато има ограничение във времето на цикъла на тестване на софтуера.
- Това тестване изисква много бюджет от организацията, тъй като изисква множество конфигурации за тестване, като например множество операционни системи и множество браузъри.
- Всички хардуерни конфигурации за настройка трябва да са налични за извършване на тестване на преносимост. Това означава, че организацията трябва да плати, за да осигури поддръжка за поддръжка на конфигурационните хардуерни конфигурации.
- Изпитването за преносимост е повтарящ се процес, което означава, че тестерите могат да загубят фокуса си по време на тестване.
- Автоматизацията на тестовете за преносимост е досадна задача и изисква умения и търпение на тестерите, за да бъдат успешно приложени.
- Изпълнението на тестове за преносимост в среда за много потребители може да бъде много сложно. Освен това е необходимо много натоварване на данни, за да бъде успешно тестването.
- Мястото за съхранение на хостинг среди може да стане скъпо за организацията.
Примери за тестване на преносимост
По-долу са дадени няколко класически примера:
- Софтуер, проектиран да работи както на операционна система Windows 7, така и на Macintosh.
- Приложения, предназначени да работят на Apple iOS и google android устройства.
- Софтуер, проектиран да бъде съвместим с браузъра Microsoft Edge и браузъра Google Chrome.
- Видео игри, предназначени за работа на операционни системи Windows 10 и Apple Macintosh.
- Софтуер, проектиран да работи на Windows 7 MySQL сървър и база данни на Macintosh Oracle.
- Инсталиране на софтуер на операционни системи Windows 10 и Windows XP.
- Деинсталиране на софтуер на операционни системи Macintosh и Linux.
Заключение
Тестовете за преносимост обикновено се предпочитат, когато има изискване софтуерният компонент да бъде преместен от една среда в друга среда. Това тестване помага да се разкрият дефектите, които не са идентифицирани като част от модулното тестване и тестването на системната интеграция.
Един основен недостатък на тестването за преносимост е размерът на бюджета, който трябва да бъде разпределен за това тестване, тъй като изисква използването на множество хардуерни конфигурации. Поддръжката и предоставянето на поддръжка за тези хардуерни конфигурации може да бъде много досадна и отнемаща време задача.
Следователно тестването за преносимост обикновено се предпочита, когато ползите надвишават недостатъците.
Надявам се, че сте разбрали ясно концепцията за тестване на преносимост чрез този отличен урок!
Препоръчително четене
- Най-добри инструменти за тестване на софтуер 2021 г. (Инструменти за автоматизация на QA теста)
- Видове тестване на софтуер: Различни видове тестване с подробности
- Функционално тестване срещу нефункционално тестване
- Тестване на софтуер QA Assistant Job
- Практическо тестване на софтуер - Нова БЕЗПЛАТНА електронна книга (Изтегляне)
- Какво е тестване за издръжливост при тестване на софтуер (примери)
- Алфа тестване и бета тестване (Пълно ръководство)
- Мислене от кутията, докато тествате софтуер!