how test java applications tips with sample test cases
У овом упутству ћемо научити компоненте укључене у Јава апликацију и разне врсте тестирања које је потребно извршити како би се осигурала висококвалитетна апликација без грешака.
Ово је троделна серија о тестирању ЈАВА апликација.
- У овом чланку ћемо научити Ј2ЕЕ компоненте и приступ ручном тестирању за Ј2ЕЕ апликацију.
- У другом ћемо прегледати Аутоматизовано тестирање приступ за тестирање Ј2ЕЕ апликација и
- У трећем ћемо прегледати свеобухватну листу алата доступних за тестирање Ј2ЕЕ апликација.
Шта ћете научити:
- Почнимо са прегледом Ј2ЕЕ апликација
- Тестирање ЈАВА / Ј2ЕЕ апликације
- Ручно тестирање Јава апликација:
- Закључак
- Препоручено читање
Почнимо са прегледом Ј2ЕЕ апликација
ДО Јава веб апликација се састоји од неколико компонената, свака од којих има важну сврху. МВЦ , што је скраћеница од Модел Виев Цонтроллер, представља најпопуларнији и најчешће коришћени образац архитектонског дизајна.
Пре него што научимо да тестирамо, прођимо на кратко кроз разне компоненте Ј2ЕЕ апликације.
- Клијент / прегледач тражи веб адресу са УРЛ-ом.
- ЈСП (Јава Сервер Пагес) - ЈСП је технологија на страни сервера намењена представљању података кориснику. Подржава приказ динамичког садржаја уз помоћ посебних ознака названих ЈСП ознаке, које помажу у уметању Јава кода унутар ХТМЛ страница. [Статички ХТМЛ увек приказује исти садржај]. Током извршавања, ЈСП се претвара у сервлет. Овде се пословна логика обично не пише.
- ЈСФ (Јава Сервер Фацес) - ЈСФ је оквир компоненти приказа за ефикасан дизајн корисничког интерфејса.
- Јавасцрипт / Јкуери - су скриптни језици који се користе за проверу приказа / екрана на страни клијента.
- Сервлет - Сервлет потврђује податке примљене од улаза, бира одговарајући код пословне логике и прослеђује вредности на Беан код.
- Ентерприсе Јава Беан (ЕЈБ) - Ту се обично пише и њоме рукује целокупна пословна логика. Беан затим позива код или за читање, писање или ажурирање базе података. Једном када су операције базе података завршене, одговор се затим преноси натраг у Сервлет, који заузврат бира одговарајући ЈСП за приказ резултата.
- Веб сервиси - Веб услуге су компоненте апликације које се изводе на одвојеном серверу и комуницирају преко ХТТП протокола.
- База података - чува целокупне податке апликације.
Имајте на уму да све веб апликације не прате ЈСП -> Сервлет -> ЕЈБ -> Модел базе података . Већина Ј2ЕЕ апликација тренутно је написана са оквиром као што су Струтс, Спринг или Хибернате. Дизајн апликација се разликује за сваки захтев на основу величине апликације, трошкова, времена израде, ресурса и величине тима.
Тестирање ЈАВА / Ј2ЕЕ апликације
Пређимо сада на тестирање целокупне Ј2ЕЕ апликације. То се ради у неколико корака.На пример, узмите у обзир да имамо три екрана:
- Екран за пријаву
- Екран за приказ запослених, на којем су наведени сви запослени у организацији
- Екран за модификацију / додавање / уклањање запосленог.
УИ (Кориснички интерфејс) за ова три екрана развијен је помоћу ЈСП / ХТМЛ-а и провере ваљаности извршене путем ЈаваСцрипт-а. Будући да је реч о примеру апликације, логика је у Сервлет-у и ДАО-у (објект приступа подацима). ДАО је класа за повезивање са базом података.
Испод су примери екрана:
Ручно тестирање Јава апликација:
Током ручног ЈАВА тестирања, тестер припрема тест случајеве из детаљног пројектног документа и покушава да покрије сваки могући сценарио и исечак кода.
# 1) ТЕСТИРАЊЕ ЈАВА ЈЕДИНИЦЕ
Јединствено тестирање је врста тестирања при чему корисник треба да тестира најмањи исечак кода за тачност, исправност и испуњавање захтева.
Узмимопример екрана за пријављивање. Екран за пријаву има два текстуална поља: корисничко име и лозинку и има два дугмета: Пошаљи и откажи.
Тест случајеви треба да обухвате све петље и условне изјаве. Тест случајеви треба да приказују очекиване резултате и податке о тестовима. Испод су неки од општих тест случајева које би корисник могао ручно да изврши на екрану за пријављивање. Резултати се затим бележе у документу о тест случају.
Испод је пример формата тест случаја за екран за пријаву.
С.бр. | Тест Цасе | Очекивани резултат | Прави резултат | Пасс / Фаил |
---|---|---|---|---|
4 | Корисник уноси корисничко име дуже од 10 знакова | Порука о грешци Требало би да се прикаже „Корисничко име не сме бити дуже од 10 знакова“ | Порука о грешци се не приказује | ФАИЛ |
1 | Корисник проверава изглед налепница Корисничко име, Лозинка | Ознаке треба да буду правилно написане и приказане фонтом нормалне величине | Корисничко име и лозинка ознаке приказани су тачно | ПАСС |
два | Корисник проверава изглед дугмета Пошаљи и откажи | Дугмад би требала бити приказана са тачним називом | Тастери Субмит и Цанцел су исправно приказани | ПАСС |
3 | Корисник проверава боју позадине екрана | Образац за пријаву треба да буде у белој табели, а екран у сивој позадини | Изглед екрана не одговара захтевима. | ФАИЛ |
4 | Корисник оставља поље за текст корисничког имена као Празно | Треба да се прикаже порука о грешци „Корисничко име не може бити празно“ | Приказује се порука о грешци „Корисничко име не може бити празно“ | ПАСС |
5 | Корисник уноси неку вредност у оквир за корисничко име и оставља поље за лозинку празним | Треба да се прикаже порука о грешци „Лозинка не може бити празна“ | Приказује се порука о грешци „Лозинка не може бити празна“ | ПАСС |
6 | Корисничко име уноси као „абцд“, а лозинку као „кккк“ | Порука о грешци 'Погрешна комбинација усернаме пассворд' треба приказати | Порука о грешци 'Погрешна комбинација усернаме пассворд' се приказује | ПАСС |
5 | Корисник уноси корисничко име као „тестусер“, а лозинку као „пассворд“ и кликће на дугме Субмит | Корисник би требао бити у могућности да види „екран са детаљима о запосленом“ | Приказује се екран са детаљима о запосленом | ПАСС |
Иако табела наводи неке од тест случајева, у наставку је комплетна листа:
- Проверите да ли постоји изузетак, укључујући изузетак показивача НУЛЛ
- Проверите да ли су НУЛЛС дозвољени за корисничко име и лозинку
- Проверите да ли је корисничко име / лозинка у исправном формату
- Проверите да ли су бројеви дозвољени за корисничко име
- Проверите да ли су посебни знакови дозвољени у Корисничком имену
- Проверите да ли сте унели тачну комбинацију корисничког имена и лозинке, а затим вас апликација води на следећи екран, односно на екран са информацијама о запосленима
- Проверите да ли је унето корисничко име тачне дужине
- Проверите да ли поље за текст корисничког имена дозвољава само максималан број знакова наведен за то поље
- Проверите да ли је поље за лозинку ако је наведено у захтевима видљиво као * приликом уноса
- Проверите да ли лозинке разликују велика и мала слова
- Проверите да ли корисничко име не разликује велика и мала слова
- Проверите да ли се страница за пријављивање не сјећа корисничког имена или лозинке, чак и након изласка
- Проверите да ли дугме Пошаљи и Откажи функционишу према захтевима
- Ако апликацију користите први пут, проверите да ли корисничко име има дозволу за улазак у апликацију
- Избришите комбинацију корисничког имена / лозинке из базе података и проверите да ли комбинација не може поново да се пријави
- За све горе наведене случајеве проверите да ли су приказане одговарајуће поруке о грешци при провери ваљаности
- Проверите да ли су налепнице и дугмад на правом месту на екрану и да ли правилно приказују текст
- Проверите да ли су прикази на екрану у складу са захтевима
- Проверите да ли се поступа са изузецима
- Проверите да ли се евидентирање врши за потребне радње
Након проласка кроз тест случајеве, можда ћете схватити да се углавном бавите тестирањем поља, дугмади, функционалности и валидације одређеног екрана. Ово је тачно, јер се Унит Тестинг врло живо бави испитивањем сваког малог исечка кода и компоненте. Исту врсту тестирања треба извршити на свим екранима.
Имајте на уму да су горе наведени само примери, а тест примери су припремљени на основу пројектног документа и детаљног пројектног документа.
Прочитајте такође=> Узорак спреман за употребу тест случајева и тест сценарији за тестирање веб апликација.
# 2) ТЕСТИРАЊЕ ИНТЕГРАЦИЈЕ
У интеграционом тестирању, појединачни модули се интегришу и заједно испитују ради исправности.
Питање и одговор на интервју за тестирање софтвера
Нека сваки од три екрана у горњем примеру развијају три различита члана тима. Сада када су завршили са Унит тестирањем, време је да сакупимо сав код и проверимо да ли добро сарађују. Тестирање интеграције се врши како би се осигурало да се подаци или контрола правилно преносе са једног екрана на други.
Ево неколико примера тест примера интеграције за пример апликације за запослене:
- Проверите да ли је корисник пријављен и сесија исти на свим осталим интегрисаним екранима
- Проверите да ли остали модули не ажурирају / бришу / убацују било који запис у базу података независно
- Нека постоји поље статуса запосленог, на којем стоји „Ново“ при додавању, „Ажурирано“ при изменама и „Избрисано“ при брисању. Иако два или три екрана могу користити исто поље статуса, важно је осигурати да се поље не ажурира погрешно.
- Проверите да ли заглавље, подножје, величина екрана и изглед испуњавају захтеве након интеграције
- Проверите да ли се притиском на дугме Субмит контрола пребацује на следећи екран
- Проверите да ли је кликом на дугме Откажи извршена радња отказана
Поред тога, општи примери интеграционих тестова за Ј2ЕЕ апликацију могу бити:
- Проверите проток података, било Објецт, КСМЛ или Сессион од краја до краја. Проверите исправност.
- Проверите да ли сесијом правилно управља сваки од модула
- Ако су укључене спољне апликације (веб услуге), проверите да ли је у могућности да упућује позиве и поново враћа податке из апликације
# 3) ТЕСТИРАЊЕ СИСТЕМА
Током системског тестирања, целокупна апликација се тестира на функционалност и комплетност с обзиром на захтеве. Вероватно би било лакше питати када се врши јединствено тестирање сваке компоненте, а компоненте кода се такође комбинују и тестирају заједно током тестирања интеграције, шта може бити другачије у тестирању система? Није нетачно рећи да је идеја у системском тестирању разбијање апликације :)
Сценарио # 1: Развијате нову апликацију за запослене са оквиром;на пример, Струтс. Постоји и неколико других апликација покренутих на различитим серверима у вашој организацији. Међутим, сви они позивају исту постојећу веб услугу да би преузели адресу и број телефона за било коју одређену особу.
Током тестирања интеграције тестирали бисте да ли ваша апликација може да позове веб услугу и да ли можете да добијете одговор. Али шта ако постоји проблем у самој веб услузи? Или веб услуга не реагује на неке ретке уносе? У нашем случају, веб услуга може да прими само број запослених до највише 6 знакова. Или, веб услуга баца изузетке за одређене формате адреса док се враћа. Ово је спољно, али је такође део системског тестирања.
Сценарио # 2 : Пријава вашег запосленог је потпуна. Додате запосленог и он генерише број запосленог # 1001. Можете да измените, избришете, ажурирате, додате, измените, избришете, додате, додате, додате, измените, избришете и коначно додате још један. Шта ако је нови број запосленог поново # 1001?
Сценарио # 3 : Претпоставимо да два корисника истовремено користе апликацију. Обојица почињу да раде на истом запосленом, један брише. Шта ако други корисник може да настави са модификацијом истих запослених онаквих какве су ускладиштене у сесији?
Испод су неки важни аспекти системског тестирања:
- Уверите се да је проток података и контрола исправан крај са крајем
- Осигурајте сигурност података о трансакцији
- Уверите се да апликација прати све пословне функционалности
- Проверите да ли апликација добро функционише као крајњи производ - проверите неисправне везе, управљање сесијама, колачиће, евидентирање, руковање грешкама, руковање изузецима, проверу ваљаности и ток трансакција.
# 4) ТЕСТИРАЊЕ УЧИНКА
Ова врста тестирања врши се када би у бази података био велики број корисника који користе апликацију или велику количину података, или обоје. Испод су неки од случајева:
- Ако се истовремено пријављује више корисника, проверите да ли се апликације не прекидају или не руше
- Ако је у бази података доступна велика количина података - проверите да ли мрежама екрана за претрагу треба дуго да изврше упите пре истека времена сесије
- У окружењу са више нити, проверите да ли апликација може добро да се носи са свим нитима
- У апликацијама у којима се креира велики број објеката, проверите да ли је додељено довољно меморије, обрађено је сакупљање смећа и да ли постоје изузеци од меморије
Закључак
У овом чланку смо покрили преглед Ј2ЕЕ апликације. Такође смо видели како ручно извршити јединствено, интеграционо, функционално и системско тестирање за сваку компоненту апликације са примером.
У следећи чланак , видећемо како тестирање аутоматизације може бити корисно за велике Ј2ЕЕ апликације.
Абоут Аутхор: Ово је гостујући чланак Падмавати С. Са укупно 7 и више година искуства у тестирању софтвера, она има велико искуство у тестирању Јава, Ј2ЕЕ, МВЦ и Струтс оквира.
Јавите нам ако радите на тестирању ЈАВА апликација. Поделите своје искуство и упите у коментарима испод.
ПРЕВ Туториал |. | СЛЕДЕЋА Лекција
Препоручено читање
- Узорци испитних радова са одговорима на ИСТКБ тестирање
- Како извршити аутоматско тестирање ЈАВА / Ј2ЕЕ апликација (2. део)
- Најбољи алати за тестирање софтвера 2021. [Алати за аутоматизацију КА теста]
- Топ 20 практичних савета за тестирање софтвера које бисте требали прочитати пре тестирања било које апликације
- Тестирање здравствених апликација - савети и важни сценарији испитивања (2. део)
- Како пронаћи грешку у апликацији? Савети и Трикови
- Тестирање базе података помоћу ЈМетер-а
- Јава виртуелна машина: како ЈВМ помаже у покретању Јава апликације