Тестване на GUI – тестови случаи на потребителски интерфейс (примери)

За да разберем тестването на GUI, нека първо разберем-

Какво е GUI?

Има два типа интерфейси за компютърно приложение. Интерфейсът на командния ред е мястото, където въвеждате текст и компютърът отговаря на тази команда. GUI означава Графичен потребителски интерфейс, където взаимодействате с компютъра, като използвате изображения, а не текст.

Следват GUI елементите, които могат да се използват за взаимодействие между потребителя и приложението:

GUI

Тестването на GUI е валидиране на горните елементи.

Какво е тестване на GUI?

GUI тестване е тип софтуерно тестване, което проверява графичния потребителски интерфейс на софтуера. Целта на тестването на графичния потребителски интерфейс (GUI) е да гарантира, че функционалностите на софтуерното приложение работят според спецификациите чрез проверка на екрани и контроли като менюта, бутони, икони и др.

GUI е това, което потребителят вижда. Кажете, че ако посетите guru99.com това, което ще видите, да речем началната страница е GUI (графичен потребителски интерфейс) на сайта. Потребителят не вижда изходния код. Интерфейсът е видим за потребителя. Особено фокусът е върху структурата на дизайна, изображенията, че работят правилно или не.

GUI тестване

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

Освен това връзките са налични и бутонът трябва да работи, когато се щракне.

Освен това, ако потребителят промени размера на екрана, нито изображенията, нито съдържанието трябва да се свиват, изрязват или припокриват.

Необходимост от GUI тестване

Сега основната концепция за GUI тестване е ясна. Няколкото въпроса, които ще изникнат в ума ви, ще бъдат

  • Защо тестване на GUI?
  • Наистина ли е необходимо?
  • Дали тестването на функционалността и логиката на приложението не е повече от достатъчно?? Тогава защо да губим време за тестване на UI.

За да получите отговор, мислете като потребител, а не като тестер. Потребителят няма никакви познания за софтуера/приложението XYZ. Това е потребителският интерфейс на приложението, който решава дали потребителят ще използва приложението по-нататък или не.

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

Какво проверявате за тестване на GUI?

Следният контролен списък ще осигури подробно GUI тестване в софтуерното тестване.

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

GUI Техники за тестване

GUI Техники за тестване могат да бъдат категоризирани в три части:

Ръчно базирано тестване

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

Ръчно базирано тестване

Запис и повторение

GUI тестването може да се извърши с помощта на инструменти за автоматизация. Това се прави на 2 части. По време на Record тестовите стъпки се улавят от инструмента за автоматизация. По време на възпроизвеждане, записаните тестови стъпки се изпълняват в тестваното приложение. Пример за такива инструменти – QTP.

Запис и повторение

Тестване на базата на модел

Тестване на базата на модел

Моделът е графично описание на поведението на системата. Помага ни да разберем и предвидим поведението на системата. Моделите помагат за генериране на ефективни тестови случаи, използващи системните изисквания. Следното трябва да се има предвид за това базирано на модел тестване:

  • Изградете модела
  • Определете входовете за модела
  • Изчислете очаквания изход за модела
  • Изпълнете тестовете
  • Сравнете действителния резултат с очаквания резултат
  • Решение за по-нататъшни действия по модела

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

  • Диаграми – Изобразява състоянието на системата и проверява състоянието след някои входни данни.
  • Таблици за решения – Таблици, използвани за определяне на резултатите за всеки приложен вход

Базираното на модел тестване е развиваща се техника за генериране на тестови случаи от изискванията. Основното му предимство, в сравнение с горните два метода, е, че може да определи нежелани състояния, които вашият GUI може да достигне.

Следват налични инструменти с отворен код за извършване на автоматизиран UI тест.

Продукт Лицензирано под
AutoHotkey GPL
Selenium Apache
Сикули MIT
Рамка за роботи Apache
Вода BSD
Доджо инструментариум BSD

Примерни GUI тестови тестови случаи

Тестването на GUI основно включва

  1. Тестване на размер, позиция, ширина, височина на елементите.
  2. Тестване на съобщенията за грешки, които се показват.
  3. Тестване на различните секции на екрана.
  4. Тестване на шрифта дали е четим или не.
  5. Тестване на екрана в различни разделителни способности с помощта на увеличаване и намаляване на мащаба като 640 x 480, 600 × 800 и т.н.
  6. Тестване на подравняването на текстовете и други елементи като икони, бутони и т.н. са на правилното място или не.
  7. Тестване на цветовете на шрифтовете.
  8. Тестване на цветовете на съобщенията за грешка, предупредителните съобщения.
  9. Тестване дали изображението има добра яснота или не.
  10. Тестване на подравняването на изображенията.
  11. Проверка на правописа.
  12. Потребителят не трябва да се разочарова, докато използва системния интерфейс.
  13. Тестване дали интерфейсът е привлекателен или не.
  14. Тестване на лентите за превъртане според размера на страницата, ако има такива.
  15. Тестване на забранените полета, ако има такива.
  16. Тестване на размера на изображенията.
  17. Тестване на заглавията дали са правилно подравнени или не.
  18. Тестване на цвета на хипервръзката.

Демо: Как да направите GUI тест

Тук ще използваме някои примерни тестови случаи за следващия екран.

Демо: Как да направите GUI тест

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

Тестов случай 01- Проверете дали текстовото поле с етикета „Изходна папка” е подравнен правилно.

Тестов случай 02 – Проверете дали текстовото поле с етикета „Пакет” е подравнен правилно.

Тестов случай 03 – Проверете този етикет с името „паса” е бутон, който се намира в края на ТекстBox с името "Изходна папка"

Тестов случай 04 – Проверете този етикет с името „паса” е бутон, който се намира в края на ТекстBox с името "Пакет"

Тестов случай 05 – Проверете дали текстовото поле с етикета „Име” е подравнен правилно.

Тестов случай 06 – Проверете дали етикетът „Модификатори” се състои от 4 радио бутона с името public, default, private, protected.

Тестов случай 07 – Проверете дали етикетът „Модификатори” се състои от 4 радио бутона, които са правилно подравнени в един ред.

Тестов случай 08 – Проверете дали етикетът „Суперкласа" под етикета "Модификатори” се състои от падащо меню, което трябва да бъде правилно подравнено.

Тестов случай 09 – Проверете дали етикетът „Суперкласа” се състои от бутон с надпис „паса” върху него, който трябва да бъде правилно подравнен.

Тестов случай 10 – Уверете се, че при щракване върху който и да е радио бутон показалецът на мишката по подразбиране трябва да се промени на показалеца на мишката на ръката.

Тестов случай 11 – Уверете се, че потребителят не трябва да може да въвежда в падащото меню на „Суперкласа"

Тестов случай 12 – Уверете се, че трябва да има правилна генерирана грешка, ако нещо е избрано погрешно.

Тестов случай 13 – Уверете се, че грешката трябва да се генерира в ЧЕРВЕН цвят, където е необходимо.

Тестов случай 14 – Проверете дали трябва да се използват правилни етикети в съобщенията за грешка.

Тестов случай 15 – Уверете се, че единичните радио бутони трябва да бъдат избрани по подразбиране всеки път.

Тестов случай 16 – Проверете дали бутонът TAB трябва да работи правилно, докато прескачате на друго поле до предишното.

Тестов случай 17 – Проверете дали всички страници трябва да съдържат правилното заглавие.

Тестов случай 18 – Проверете дали текстът на страницата трябва да е правилно подравнен.

Тестов случай 19 – Проверете дали след актуализиране на всяко поле трябва да се покаже правилно съобщение за потвърждение.

Тестов случай 20 – Проверете дали трябва да бъде избран само 1 бутон за избор и че могат да бъдат избрани повече от единични квадратчета за отметка.

Предизвикателства при GUI тестване

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

GUI инструменти за тестване

Следва списък с популярни GUI инструменти за тестване :

  1. Selenium
  2. QTP
  3. Cucumber
  4. SilkTest
  5. TestComplete
  6. Squish GUI тестер

Щракнете тук, за да научите Selenium, QTP & Cucumber.

Заключение

Успехът на софтуерния продукт зависи изключително много от това как GUI взаимодейства с потребителя и от лекотата при използване на различните му функции. Следователно GUI тестването е много важно. Ръчното GUI тестване понякога може да бъде повтарящо се и скучно и следователно податливо на грешки. Автоматизацията е силно препоръчителна за GUI тестване.