Какво е вградено тестване при тестване на софтуер?

Съдържание:

Anonim

В този урок ще научите

  • Какво представляват вградените системи?
  • Какво е вградено тестване?
  • Типове тестване на вграден софтуер
  • Разлика: Вградено тестване и тестване на софтуер
  • Предизвикателства: Тестване на вграден софтуер

Какво представляват вградените системи?

Вградените системи са електронно управляваните устройства, при които софтуерът и хардуерът са тясно свързани. Вградените системи могат да съдържат различни изчислителни устройства. Това са компютри, вградени в други устройства, за да работят специфични за приложението функции. Крайният потребител обикновено дори не е наясно с тяхното съществуване.

Вградено тестване

Вграденото тестване е процес на тестване за проверка на функционални и нефункционални атрибути както на софтуер, така и на хардуер във вградена система и за гарантиране, че крайният продукт няма дефекти. Основната цел на вграденото тестване е да провери и потвърди дали крайният продукт на вградения хардуер и софтуер отговаря на изискванията на клиента или не.

Тестването на вградения софтуер проверява и гарантира, че съответният софтуер е с добро качество и отговаря на всички изисквания, на които трябва да отговаря. Тестването на вграден софтуер е отличен подход за гарантиране на сигурност в критични приложения като медицинско оборудване, железопътни линии, авиация, автомобилна индустрия и др. Строгите и внимателни тестове са от решаващо значение за сертифициране на софтуера.

Как да извършите тестване на вграден софтуер

Като цяло тествате по четири причини:

  • За да намерите грешки в софтуера
  • Помага за намаляване на риска както за потребителите, така и за компанията
  • Намалете разходите за разработка и поддръжка
  • За подобряване на производителността

При вграденото тестване се извършват следните дейности:

1. Софтуерът е снабден с някои входове.

2. Изпълнява се част от софтуера.

3. Състоянието на софтуера се наблюдава и изходите се проверяват за очаквани свойства, като например дали изходът съответства на очаквания резултат, съответствие с изискванията и липса на системни сривове.

Типове тестване на вграден софтуер

По принцип има пет нива на тестване, които могат да бъдат приложени към вградения софтуер

Тестване на софтуерни модули

Единичният модул е ​​или функция, или клас. Единичното тестване се извършва от екипа на разработчиците, предимно от разработчика и обикновено се извършва в модел на партньорска проверка. Въз основа на спецификацията на модула се разработват тестови случаи.

Тестване на интеграцията

Интеграционното тестване може да бъде класифицирано в два сегмента:

  1. Тестване на софтуерна интеграция
  2. Тестване на софтуерна / хардуерна интеграция.

В крайна сметка се тества взаимодействието на хардуерния домейн и софтуерните компоненти. Това може да включва изследване на взаимодействието между вградените периферни устройства и софтуера.

Разработката на вграден софтуер има уникална характеристика, която се фокусира върху действителната среда, в която се изпълнява софтуерът, обикновено се създава успоредно със софтуера. Това създава неудобство за тестване, тъй като цялостното тестване не може да се извърши в симулирано състояние.

Тестване на системни единици

Сега модулът, който трябва да бъде тестван, е пълна рамка, която се състои от пълен софтуерен код, допълнително всички операционни системи в реално време (RTOS) и части, свързани с платформата, като прекъсвания, механизми за задачи, комуникации и т.н. Протоколът Point of Control вече не е извикване на функция или извикване на метод, а по-скоро съобщение, изпратено / получено, използващо опашките за съобщения RTOS.

Наблюдават се системни ресурси, за да се оцени способността на системата да поддържа изпълнението на вградената система. За този аспект тестването в сива кутия е предпочитан метод за тестване. В зависимост от организацията, тестването на системните модули е задължение или на разработчика, или на специален екип за системна интеграция.

Тестване на системната интеграция

Модулът, който трябва да бъде тестван, започва от набор от компоненти в рамките на един възел. Точките за контрол и наблюдения (PCO) са комбинация от мрежови комуникационни протоколи и RTOS, като мрежови съобщения и RTOS събития. В допълнение към компонент, виртуален тестер може също да играе ролята на възел.

Тестване за проверка на системата

Модулът, който трябва да бъде тестван, е подсистема с цялостно внедряване или пълната вградена система. Целта на този окончателен тест е да отговори на външните функционални изисквания на обекта. Обърнете внимание, че външен обект е или лице, или устройство в телекомуникационна мрежа, или и двете.

Разлика: Вградено тестване и тестване на софтуер

Тестване на софтуер Вградено тестване
Тестването на софтуера е свързано само със софтуер. Вграденото тестване е свързано както със софтуер, така и с хардуер.
Средно 90% тестване в света е чисто ръчно тестване на черна кутия. Вграденото тестване се извършва на вградени системи или чипове, може да бъде тестване на черна кутия или бяла кутия.
Основните области на тестване са GUI проверки, функционалност, валидиране и някакво ниво на тестване на база данни. Основни области на тестване са поведението на хардуера за номер. на входовете, дадени му.
Тестването на софтуер се извършва основно на клиент-сървър, уеб и мобилни приложения. Вградено тестване обикновено се извършва на хардуера.
напр. Google Mail, Yahoo Mail, приложения за Android. напр. Машини в областта на здравеопазването, Микроконтролери, използвани в компютри.

Предизвикателства: Тестване на вграден софтуер

Някои от предизвикателствата, с които човек може да се сблъска по време на тестване на вграден софтуер:

Хардуерна зависимост

Хардуерната зависимост е сред основните трудности, с които се сблъскват по време на тестването на вградения софтуер поради ограничен достъп до хардуер. Емулаторите и симулаторите обаче може да не представляват точно поведението на действителното устройство и биха могли да дадат погрешно усещане за производителността на системата и използваемостта на приложението.

Софтуер с отворен код

По-голямата част от вградените софтуерни компоненти са с отворен код, не са създадени вътрешно и липсват пълни тестове за тях. Има широк спектър от тестови комбинации и получени сценарии.

Софтуер срещу хардуерни дефекти

Друг аспект е, когато се разработва софтуер за прясно създаден хардуер, по време на този процес може да се установи високо съотношение на хардуерни дефекти. Откритият дефект просто не се ограничава само до софтуер. Може да е свързано и с хардуер.

Възпроизводими дефекти

Дефектите са по-трудни за възпроизвеждане / пресъздаване в случай на вградена система. Това налага прилагането на вградената процедура за тестване да оценява всеки случай на дефект значително по-висок, отколкото в стандартен случай, с изключение на събирането на толкова данни, колкото може разумно да се наложи да промени системата, за да намери основата на дефекта.

Непрекъснати актуализации на софтуера

Вградените системи изискват редовни актуализации на софтуера като надстройка на ядрото, корекции на защитата, различни драйвери на устройства и др. Ограниченията, идентифицирани с влиянието на софтуерните актуализации, затрудняват идентифицирането на грешки. Освен това увеличава значението на процедурата за изграждане и внедряване.

Обобщение

Има някои трудности при тестването на вградено софтуерно тестване, което го прави по-трудно от редовното тестване на софтуера. Най-основният въпрос е тясната зависимост от хардуерната среда, която се подготвя едновременно със софтуера и която редовно се изисква за извършване на надеждно тестване на софтуера. Понякога е дори трудно да се тества софтуерът без персонализирани инструменти, което без усилия прави концентрирането върху тестването на късни етапи изключително примамливо.

Едно от най-важните неща е, че трябва да помислите, е фактът, че често трябва да избирате за автоматизирано тестване на софтуера. Вграденото автоматизирано тестване е по-бърз процес, който ще отнеме няколко часа, и по този начин проблемът с вашия софтуер е уреден.