how test java applications tips with sample test cases
V tej vadnici bomo spoznali komponente, vključene v aplikacijo Java, in različne vrste testiranja, ki jih je treba izvesti, da zagotovimo visoko kakovostno aplikacijo brez napak.
To je tridelna serija o preizkušanju aplikacij JAVA.
- V tem članku bomo spoznali komponente J2EE in pristop ročnega testiranja za aplikacijo J2EE.
- V drugem bomo pregledali Avtomatizirano testiranje pristop za preizkušanje aplikacij J2EE in
- V tretjem bomo pregledali obsežen seznam orodij, ki so na voljo za testiranje aplikacij J2EE.
Kaj se boste naučili:
- Začnimo s pregledom aplikacij J2EE
- Testiranje aplikacije JAVA / J2EE
- Ročno testiranje aplikacij Java:
- Zaključek
- Priporočeno branje
Začnimo s pregledom aplikacij J2EE
TO Java Spletna aplikacija je sestavljena iz več komponent, od katerih ima vsak pomemben namen. MVC , kar pomeni Model View Controller, je najbolj priljubljen in pogosto uporabljen vzorec arhitekturnega oblikovanja.
Preden se naučimo preizkusiti, na kratko pojdimo skozi različne komponente aplikacije J2EE.
- Odjemalec / brskalnik zahteva spletni naslov z URL-jem.
- JSP (Java Server Pages) - JSP je tehnologija na strežniški strani, namenjena predstavitvi podatkov uporabniku. Podpira prikaz dinamične vsebine s pomočjo posebnih oznak, imenovanih oznake JSP, ki pomagajo pri vstavljanju kode Java na strani HTML. (Statični HTML vedno prikazuje isto vsebino). Med izvajanjem se JSP pretvori v strežniški programček. Poslovna logika tu običajno ni zapisana.
- JSF (Obrazi Java Server) - JSF je ogrodje komponent pogleda za učinkovito zasnovo uporabniškega vmesnika.
- Javascript / Jquery - so skriptni jeziki, ki se uporabljajo za preverjanje pogleda / zaslona na strani odjemalca.
- Servlet - Servlet potrdi podatke, prejete z vhoda, izbere ustrezno kodo poslovne logike in vrednosti prenese v kodo Bean.
- Enterprise Java Bean (EJB) - Tu je običajno napisana in obdelana celotna poslovna logika. Bean nato pokliče kodo bodisi za branje, pisanje ali posodobitev baze podatkov. Ko so operacije baze podatkov končane, se odgovor nato prenese nazaj v strežniški programček, ki nato izbere ustrezen JSP za prikaz rezultatov.
- WebServices - Spletne storitve so sestavni deli aplikacije, ki se izvajajo na ločenem strežniku in komunicirajo prek protokola HTTP.
- Baza podatkov - shrani celotne podatke aplikacije.
Upoštevajte, da vse spletne aplikacije ne sledijo JSP -> Servlet -> EJB -> Model baze podatkov . Večina aplikacij J2EE je trenutno napisanih z ogrodjem, kot so Struts, Spring ali Hibernate. Oblika aplikacij se glede na velikost aplikacije razlikuje glede na velikost aplikacije, stroške, čas razvoja, vire in velikost ekipe.
Testiranje aplikacije JAVA / J2EE
Pojdimo zdaj na preizkušanje celotne aplikacije J2EE. To se naredi v več korakih.Na primer, upoštevajte, da imamo trije zasloni:
- Zaslon za prijavo
- Zaslon za zaposlene, na katerem so navedeni vsi zaposleni v organizaciji
- Zaslon za spremembo / dodajanje / odstranjevanje zaposlenega.
Uporabniški vmesnik (Uporabniški vmesnik) za te tri zaslone je razvit z JSP / HTML in validacijami, izvedenimi s pomočjo JavaScript. Ker gre za vzorčno aplikacijo, je logika v strežniku in DAO (predmet dostopa do podatkov). DAO je razred za povezovanje z bazo podatkov.
Spodaj so vzorčni zasloni:
Ročno testiranje aplikacij Java:
Med ročnim testiranjem JAVA preizkuševalec pripravi testne primere iz podrobnega projektnega dokumenta in poskuša zajeti vse možne scenarije in delčke kode.
# 1) PRESKUŠANJE JAVA ENOT
Enotno testiranje je vrsta testiranja pri čemer mora uporabnik preizkusiti najmanjši delček kode za natančnost, pravilnost in izpolnjevanje zahtev.
Vzemimoprimer zaslona za prijavo. Zaslon za prijavo ima dve besedilni polji: uporabniško ime in geslo ter dva gumba: pošlji in prekliči.
Testni primeri bi morali zajemati vse zanke in pogojne stavke. Testni primeri morajo prikazati pričakovane rezultate in preskusne podatke. Spodaj je nekaj splošnih testnih primerov, ki jih lahko uporabnik ročno izvede na prijavnem zaslonu. Rezultati so nato zapisani v dokumentu o testnem primeru.
Spodaj je primer vzorčne oblike primera zaslona za prijavo.
Št. | Testni primer | pričakovani rezultati | Dejanski rezultat | Pass / Fail |
---|---|---|---|---|
4. | Uporabnik vnese uporabniško ime z več kot 10 znaki | Obvestilo o napaki Prikazalo se mora »Uporabniško ime ne sme biti daljše od 10 znakov« | Sporočilo o napaki ni prikazano | FAIL |
1. | Uporabnik preveri videz nalepk Uporabniško ime, Geslo | Oznake morajo biti pravilno črkovane in prikazane v običajni pisavi | Uporabniško ime in geslo nalepke sta pravilno prikazana | PREHOD |
dva | Uporabnik preveri videz gumba Oddaj in prekliči | Gumbi naj bodo prikazani s pravilnim imenom | Gumba Submit in Cancel sta pravilno prikazana | PREHOD |
3. | Uporabnik preveri barvo ozadja zaslona | Obrazec za prijavo mora biti v beli tabeli, zaslon pa mora biti v ozadju sive barve | Videz zaslona ne ustreza zahtevam. | FAIL |
4. | Uporabnik pusti polje za uporabniško ime kot Prazno | Prikaže se sporočilo o napaki »Uporabniško ime ne sme biti prazno« | Prikaže se sporočilo o napaki »Uporabniško ime ne sme biti prazno« | PREHOD |
5. | Uporabnik v polje za uporabniško ime vnese neko vrednost, polje z geslom pa pusti prazno | Prikaže se sporočilo o napaki »Geslo ne sme biti prazno« | Prikaže se sporočilo o napaki »Geslo ne sme biti prazno« | PREHOD |
6. | Uporabnik vnese uporabniško ime kot 'abcd' in geslo kot 'xxxx' | Obvestilo o napaki 'Neveljavna kombinacija uporabniškega gesla' mora biti prikazan | Obvestilo o napaki 'Neveljavna kombinacija uporabniškega gesla' se prikaže | PREHOD |
5. | Uporabnik vnese uporabniško ime kot »testuser« in geslo kot »geslo« in klikne gumb Submit | Uporabnik bi moral imeti možnost, da vidi 'zaslon s podatki o zaposlenem' | Prikaže se zaslon s podatki o zaposlenem | PREHOD |
Medtem ko je v tabeli naštetih nekaj testnih primerov, je spodaj celoten seznam:
- Preverite morebitne izjeme, vključno z izjemo kazalca NULL
- Preverite, ali NULLS niso dovoljeni za uporabniško ime in geslo
- Preverite, ali je uporabniško ime / geslo v pravilni obliki
- Preverite, ali številke niso dovoljene za uporabniško ime
- Preverite, ali posebni znaki v uporabniškem imenu niso dovoljeni
- Preverite, ali ste vnesli pravilno kombinacijo uporabniškega imena in gesla, nato pa vas aplikacija popelje na naslednji zaslon, to je zaslon z informacijami o zaposlenih
- Preverite, ali je vneseno uporabniško ime pravilne dolžine
- Preverite, ali besedilno polje uporabniškega imena dovoljuje le največje dovoljeno število znakov za to polje
- Preverite, ali je polje za geslo, če je določeno v zahtevah, med vnosom vidno kot *
- Preverite, ali gesla razlikujejo med velikimi in malimi črkami
- Preverite, ali uporabniško ime ne razlikuje med velikimi in malimi črkami
- Preverite, ali se na strani za prijavo uporabniško ime ali geslo ne spomni niti po izhodu
- Preverite, ali gumb za oddajo in preklic deluje v skladu z zahtevami
- Če aplikacijo uporabljate prvič, preverite, ali ima uporabniško ime dovoljenje za vstop v aplikacijo
- Iz baze podatkov izbrišite kombinacijo uporabniškega imena in gesla in preverite, ali se kombinacija ne more znova prijaviti
- V vseh zgornjih primerih preverite, ali so prikazana ustrezna sporočila o napakah pri preverjanju
- Preverite, ali so nalepke in gumbi na pravem mestu na zaslonu in ali pravilno prikazujejo besedilo
- Preverite, ali so prikazi na zaslonu v skladu z zahtevami
- Preverite, ali se obravnavajo izjeme
- Preverite, ali se beleženje izvaja za zahtevana dejanja
Po pregledu testnih primerov boste morda ugotovili, da se večinoma ukvarjate s testiranjem polj, gumbov, funkcionalnosti in preverjanja veljavnosti določenega zaslona. To je natančno, saj se enotno testiranje zelo zavzeto ukvarja s testiranjem vsakega majhnega delčka kode in komponente. Za vse zaslone je treba opraviti isto vrsto preskušanja.
Upoštevajte, da so zgoraj navedeni zgolj primeri, testni primeri pa so pripravljeni na podlagi projektnega dokumenta in podrobnega projektnega dokumenta.
Preberite tudi=> Vzorec pripravljen za uporabo testnih primerov in testni scenariji za testiranje spletnih aplikacij.
# 2) PRESKUŠANJE INTEGRACIJE
Pri integracijskem testiranju se posamezni moduli integrirajo in skupaj preizkušajo glede pravilnosti.
najboljše slušalke za navidezno resničnost za ps4
Naj vsakega od treh zaslonov v zgornjem primeru razvijejo trije različni člani ekipe. Zdaj, ko so končali s preizkušanjem enot, je čas, da združimo vso kodo in preverimo, ali dobro sodelujejo. Integracijsko preskušanje se izvede za zagotovitev, da se podatki ali nadzor pravilno prenašajo z enega zaslona na drugega.
Tu je nekaj primerov testnih primerov integracije za primer vloge za zaposlenega:
- Preverite, ali sta uporabnik prijavljen in seja enaka na vseh drugih novih integriranih zaslonih
- Preverite, ali drugi moduli ne posodabljajo / brišejo / vstavljajo nobenega zapisa v bazo podatkov
- Naj bo polje o statusu zaposlenega, v katerem piše 'Novo' ob dodajanju, 'Posodobljeno' pri spremembi in 'Izbrisano' pri brisanju. Čeprav lahko dva ali trije zasloni uporabljajo isto polje stanja, je pomembno zagotoviti, da se polje ne napačno posodablja.
- Preverite, ali glava, noga, velikost zaslona in videz ustrezajo zahtevam po integraciji
- Preverite, ali se s klikom na gumbe za oddajo nadzor prenese na naslednji zaslon
- Preverite, ali je s klikom na gumb Prekliči izvedeno dejanje preklicano
Poleg tega bi lahko bili splošni testni primeri integracije za aplikacijo J2EE:
- Preverite pretok podatkov, bodisi Object, XML ali Session od konca do konca. Preverite pravilnost.
- Preverite, ali vsak modul pravilno upravlja sejo
- Če gre za zunanje programe (spletne storitve), preverite, ali je vaša aplikacija sposobna klicati in pridobiti podatke iz aplikacije
# 3) TESTIRANJE SISTEMA
Pri sistemskem testiranju je celotna aplikacija preizkušena glede funkcionalnosti in popolnosti glede na zahteve. Verjetno bi bilo lažje vprašati, kdaj se izvede enotno preskušanje vsake komponente in se med integracijskim preskušanjem tudi kombinirajo in preizkusijo komponente kode, kaj bi lahko bilo drugače pri testiranju sistema? Ni nenatančno trditi, da je ideja sistemskega testiranja razbiti aplikacijo :)
Scenarij 1: Razvijete novo aplikacijo za zaposlene z ogrodjem;na primer, Struts. Na različnih strežnikih v vaši organizaciji deluje tudi več drugih aplikacij. Vendar pa vsi pokličejo isto obstoječo spletno storitev, da poberejo naslov in telefonsko številko za katero koli osebo.
Med integracijskim testiranjem bi preizkusili, ali lahko vaša aplikacija pokliče na spletno storitev in ali lahko dobite odgovor. Kaj pa, če je težava v sami spletni storitvi? Ali pa se spletna storitev ne odziva na nekatere redke vnose? V našem primeru lahko spletna storitev sprejme samo število zaposlenih največ 6 znakov. Spletna storitev pa vrne izjeme za nekatere oblike naslova. To je zunanje, vendar je tudi del sistemskega testiranja.
2. scenarij : Vaša prijava za zaposlene je popolna. Dodate zaposlenega in ta ustvari številko zaposlenega # 1001. Spreminjate, brišete, posodabljate, dodajate, spreminjate, brišete, dodajate, dodajate, spreminjate, brišete in nato končno dodajate še eno. Kaj pa, če je nova številka zaposlenega spet # 1001?
Scenarij št : Predpostavimo, da aplikacijo hkrati uporabljata dva uporabnika. Oba začneta delati pri istem zaposlenem, eden izbriše. Kaj pa, če lahko drugi uporabnik nadaljuje s spremembami istih zaposlenih, ki so shranjeni v seji?
Spodaj je nekaj pomembnih vidikov preizkušanja sistema:
- Prepričajte se, da je pretok podatkov in nadzor pravilno konec koncev
- Zagotovite varnost podatkov o transakciji
- Poskrbite, da aplikacija sledi vsem poslovnim funkcionalnostim
- Preverite, ali aplikacija dobro deluje kot končni izdelek - preverite prekinjene povezave, upravljanje sej, piškotke, beleženje, obdelavo napak, obdelavo izjem, preverjanje veljavnosti in tok transakcij.
# 4) TESTIRANJE USPEŠNOSTI
Tovrstno preskušanje se izvaja, kadar bi v zbirki podatkov uporabljalo veliko uporabnikov ali veliko podatkov ali pa oboje. Spodaj je nekaj primerov:
- Če se hkrati prijavi več uporabnikov, preverite, ali se aplikacije ne obesijo / zrušijo
- Če je v zbirki podatkov na voljo velika količina podatkov - preverite, da mreže za iskanje ne trajajo prav dolgo, da se poizvedbe izvedejo pred iztekom seje
- V okolju z več nitmi preverite, ali lahko aplikacija dobro obvlada vse niti
- V aplikacijah, kjer je ustvarjeno veliko število predmetov, preverite, ali je dodeljeno dovolj pomnilnika, obdelano zbiranje smeti in ali ni izjem iz pomnilnika
Zaključek
V tem članku smo zajeli pregled aplikacije J2EE. S primerom smo videli tudi, kako ročno izvesti enotno, integracijsko, funkcionalno in sistemsko testiranje za vsako komponento aplikacije.
V naslednji članek , bomo videli, kako je lahko testiranje avtomatizacije koristno za velike aplikacije J2EE.
O avtorju: To je gostujoči članek Padmavaty S. S 7+ leti izkušenj s testiranjem programske opreme ima bogate izkušnje s testiranjem okvirov Java, J2EE, MVC in Struts.
Sporočite nam, če delate na preizkušanju aplikacij JAVA. Delite svoje izkušnje in vprašanja v komentarjih spodaj.
PREV Vadnica | NASLEDNJA Vadnica
Priporočeno branje
- Vzorčni vprašalniki z odgovori na testiranje ISTQB za testiranje
- Kako izvesti samodejno testiranje aplikacij JAVA / J2EE (2. del)
- Najboljša orodja za testiranje programske opreme 2021 (QA Test Automation Tools)
- 20 najboljših praktičnih nasvetov za preizkušanje programske opreme, ki jih morate prebrati, preden preizkusite katero koli aplikacijo
- Testiranje zdravstvenih aplikacij - nasveti in pomembni testni scenariji (2. del)
- Kako najti napako v aplikaciji? Namigi in triki
- Testiranje zbirke podatkov z JMeter
- Navidezni stroj Java: kako JVM pomaga pri zagonu aplikacije Java