logo

Funkcionalno testiranje

Prije nego što pređemo na funkcionalno testiranje, trebali bismo znati o testiranju, što je testiranje?

Što je testiranje?

Jednostavno rečeno, testiranje je usporedba stvarnog rezultata s očekivanim rezultatom. Testiranje se provodi kako bi se utvrdilo rade li sve funkcije prema očekivanjima.

Što je testiranje softvera?

Testiranje softvera je tehnika kojom se provjerava odgovara li stvarni rezultat očekivanom rezultatu i kako bi se osiguralo da softver nema nedostataka ili grešaka.

Testiranje softvera osigurava da aplikacija nema nikakvih nedostataka ili da zahtjevi nedostaju stvarnim potrebama. Ručno ili automatizirano testiranje može obaviti testiranje softvera.

Testiranje softvera također se definira kao provjera aplikacije koja se testira (AUT).

Postoje dvije vrste testiranja:

Funkcionalno testiranje

Funkcionalno testiranje:

To je vrsta testiranja softvera koja se koristi za provjeru funkcionalnosti softverske aplikacije, radi li funkcija u skladu sa specifikacijom zahtjeva. U funkcionalnom testiranju, svaka se funkcija testira davanjem vrijednosti, određivanjem izlaza i provjerom stvarnog izlaza s očekivanom vrijednošću. Funkcionalno testiranje izvedeno kao testiranje crne kutije koje se prikazuje kako bi se potvrdilo da se funkcionalnost aplikacije ili sustava ponaša onako kako očekujemo. To se radi kako bi se provjerila funkcionalnost aplikacije.

Funkcionalno testiranje koje se naziva i testiranje crne kutije, jer se fokusira na specifikaciju aplikacije, a ne na stvarni kod. Tester mora testirati samo program, a ne sustav.

Cilj funkcionalnog ispitivanja

Svrha funkcionalnog testiranja je provjeriti primarnu ulaznu funkciju, nužno upotrebljivu funkciju, tijek GUI-ja zaslona. Funkcionalno testiranje prikazuje poruku o pogrešci tako da se korisnik može lako kretati kroz aplikaciju.

Što je proces funkcionalnog testiranja?

Testeri slijede sljedeće korake u funkcionalnom testiranju:

  • Tester provjerava specifikaciju zahtjeva u softverskoj aplikaciji.
  • Nakon analize, ispitivač specifikacije zahtjeva izradit će plan.
  • Nakon planiranja testova, ispitivač će dizajnirati testni slučaj.
  • Nakon dizajniranja testa, ispitivač će izraditi dokument matrice sljedivosti.
  • Ispitivač će izvršiti dizajn testnog slučaja.
  • Analiza pokrivenosti za ispitivanje pokrivenog područja testiranja aplikacije.
  • Upravljanje nedostacima treba upravljati rješavanjem kvarova.
Funkcionalno testiranje

Što testirati u funkcionalnom testiranju? Objasniti

Glavni cilj funkcionalnog testiranja je provjera funkcionalnosti softverskog sustava. Koncentrira se na:

    Osnovna upotrebljivost:Funkcionalno testiranje uključuje testiranje upotrebljivosti sustava. Provjerava može li se korisnik slobodno kretati kroz zaslone bez ikakvih poteškoća.Pristupačnost:Funkcionalno testiranje testira dostupnost funkcije.Glavna funkcija:Fokusira se na testiranje glavne značajke.Stanje greške:Za provjeru stanja pogreške koristi se funkcionalno testiranje. Provjerava je li prikazana poruka o pogrešci.

Objasnite cijeli postupak za izvođenje funkcionalnog testiranja.

Postoje sljedeći koraci za izvođenje funkcionalnog testiranja:

  • Postoji potreba za razumijevanjem softverskih zahtjeva.
  • Identificirajte ulazne podatke testa
  • Izračunajte očekivani ishod s odabranim ulaznim vrijednostima.
  • Izvršite testne slučajeve
  • Usporedba između stvarnog i izračunatog rezultata
Funkcionalno testiranje

Objasnite vrste funkcionalnih ispitivanja.

Glavni cilj funkcionalnog testiranja je ispitati funkcionalnost komponente.

Funkcionalno testiranje je podijeljeno u više dijelova.

Ovdje su sljedeće vrste funkcionalnog testiranja.

Funkcionalno testiranje

Jedinično testiranje: Jedinično testiranje je vrsta testiranja softvera, gdje se testira pojedinačna jedinica ili komponenta softvera. Jedinično testiranje, ispitivanje različitih dijelova aplikacije, jediničnim testiranjem također je obavljeno funkcionalno testiranje, jer jedinično testiranje osigurava da svaki modul radi ispravno.

Programer radi jedinično testiranje. Jedinično testiranje se provodi u fazi razvoja aplikacije.

Ispitivanje dima: Funkcionalno ispitivanje ispitivanjem dimom. Ispitivanje dima uključuje samo osnovne (značajke) funkcionalnosti sustava. Ispitivanje dima poznato je kao ' Testiranje provjere izrade .' Ispitivanje dima ima za cilj osigurati da najvažnija funkcija radi.

Na primjer, Smoke testiranje provjerava da se aplikacija uspješno pokreće i provjerava je li GUI osjetljiv.

Testiranje uračunljivosti: Testiranje uračunljivosti uključuje cijeli poslovni scenarij na visokoj razini radi ispravno. Testiranje ispravnosti provodi se kako bi se provjerila funkcionalnost/ispravljene greške. Testiranje zdravog razuma malo je naprednije od ispitivanja dimom.

Na primjer, prijava radi dobro; svi gumbi rade ispravno; nakon klika na gumb navigacija stranicom je gotova ili ne.

Regresijsko testiranje: Ova vrsta testiranja koncentrira se kako bi se osiguralo da promjene koda ne bi trebale utjecati na postojeću funkcionalnost sustava. Regresijsko testiranje određuje kada se pojavi greška u sustavu nakon ispravljanja greške, regresijsko testiranje koncentrira se na to rade li svi dijelovi ili ne. Regresijsko testiranje usredotočuje se na to ima li utjecaja na sustav.

Testiranje integracije: Testiranje integracije kombinirane pojedinačne jedinice i testirane kao grupa. Svrha ovog testiranja je otkriti greške u interakciji između integriranih jedinica.

Programeri i testeri provode integracijsko testiranje.

Testiranje bijele kutije: Testiranje bijele kutije poznato je kao testiranje Clear Box, testiranje temeljeno na kodu, strukturalno ispitivanje, opsežno testiranje i ispitivanje staklene kutije, ispitivanje prozirne kutije. To je metoda testiranja softvera u kojoj je testirana unutarnja struktura/dizajn/implementacija poznata ispitivaču.

Testiranje bijele kutije zahtijeva analizu unutarnje strukture komponente ili sustava.

Testiranje crne kutije: Također je poznato kao testiranje ponašanja. U ovom testiranju, unutarnja struktura/dizajn/implementacija nije poznata ispitivaču. Ova vrsta testiranja je funkcionalno testiranje. Zašto smo ovu vrstu testiranja nazvali testiranjem crne kutije, u ovom ispitivanju tester ne može vidjeti interni kod.

Na primjer, ispitivač bez znanja o unutarnjim strukturama web-mjesta testira web-stranice korištenjem web-preglednika koji daje unos i provjerava izlaz u odnosu na očekivani ishod.

Test prihvaćanja korisnika: To je vrsta testiranja koje provodi klijent kako bi certificirao sustav prema zahtjevima. Završna faza testiranja je testiranje prihvaćanja od strane korisnika prije puštanja softvera na tržište ili proizvodno okruženje. UAT je vrsta testiranja crne kutije u koju će biti uključena dva ili više krajnjih korisnika.

Ponovno testiranje: Ponovno testiranje je vrsta testiranja koja se provodi kako bi se provjerilo da li su testni slučajevi koji su bili neuspješni u konačnom izvođenju uspješno prošli nakon otklanjanja nedostataka. Obično ispitivač dodjeljuje grešku kada je pronađe tijekom testiranja proizvoda ili njegove komponente. Greška je dodijeljena programeru i on je popravlja. Nakon popravka, bug se dodjeljuje testeru za njegovu provjeru. Ovo testiranje je poznato kao ponovno testiranje.

Testiranje baze podataka: Testiranje baze podataka je vrsta testiranja koja provjerava shemu, tablice, okidače itd. baze podataka koja se testira. Testiranje baze podataka može uključivati ​​stvaranje složenih upita za opterećenje/testiranje baze podataka i provjeru njezine reakcije. Provjerava integritet i dosljednost podataka.

Primjer: razmotrimo bankovnu aplikaciju u kojoj korisnik vrši transakciju. Nakon testiranja baze podataka koje slijedi, stvari su važne. Oni su:

  • Aplikacija pohranjuje podatke o transakciji u bazi podataka aplikacije i ispravno ih prikazuje korisniku.
  • Nema izgubljenih informacija u ovom procesu
  • Aplikacija ne čuva podatke o djelomično izvedenim ili prekinutim operacijama.
  • Korisnicima nije dopušten pristup pojedincima

Ad-hoc testiranje: Ad-hoc testiranje je neformalna vrsta testiranja čiji je cilj razbiti sustav. Ova vrsta testiranja softvera je neplanirana aktivnost. Za izradu testnih slučajeva ne slijedi nikakav dizajn testa. Ad-hoc testiranje vrši se nasumično na bilo kojem dijelu aplikacije; ne podržava nikakav strukturirani način testiranja.

Testiranje oporavka: Testiranje oporavka koristi se za definiranje koliko se dobro aplikacija može oporaviti od pada, kvara hardvera i drugih problema. Svrha testiranja oporavka je provjeriti sposobnost sustava da se oporavi od ispitnih točaka kvara.

Statičko testiranje: Statičko testiranje je tehnika testiranja softvera kojom možemo provjeriti nedostatke u softveru, a da ga zapravo ne izvršimo. Statičko testiranje provodi se kako bi se izbjegle pogreške u ranoj fazi razvoja jer je lakše pronaći kvar u ranim fazama. Statičko testiranje koje se koristi za otkrivanje pogrešaka koje možda nisu pronađene u dinamičkom testiranju.

Zašto koristimo statičko testiranje?

Statičko ispitivanje pomaže pronaći grešku u ranim fazama. Uz pomoć statičkog testiranja, to će smanjiti vremenske rokove razvoja. Smanjuje troškove i vrijeme testiranja. Statičko testiranje također se koristi za produktivnost razvoja.

Testiranje komponenti: Testiranje komponenti je također vrsta testiranja softvera u kojem se testiranje provodi na svakoj komponenti zasebno bez integracije s drugim dijelovima. Testiranje komponenti također je vrsta testiranja crne kutije. Testiranje komponenti također se naziva testiranje jedinica, testiranje programa ili testiranje modula.

Testiranje sive kutije: Testiranje sive kutije definiran kao kombinacija testiranja bijele i crne kutije. Grey Box testiranje je tehnika testiranja koja se izvodi s ograničenim informacijama o unutarnjoj funkcionalnosti sustava.

Funkcionalno testiranje

Koji su alati za funkcionalno testiranje?

Funkcionalno testiranje također se može izvršiti različitim osim ručnog testiranja. Ovi alati pojednostavljuju proces testiranja i pomažu u dobivanju točnih i korisnih rezultata.

To je jedna od značajnih tehnika temeljenih na vrhunskom prioritetu o kojima je odlučeno i specificirano prije procesa razvoja.

Alati koji se koriste za funkcionalno testiranje su:

cast string na int
Alati Značajke/karakteristike
Zapravo
  • To je alat za testiranje otvorenog koda i automatizacije, objavljen pod licencom otvorenog koda Apache License, koji se koristi za testiranje web aplikacije.
  • Sahi je napisan u Javi i JavaScriptu i uzima se u obzir za većinu tehnika testiranja.
  • Radi kao proxy poslužitelj; neovisan je o pregledniku.
SoapUI
  • To je alat za funkcionalno testiranje otvorenog koda koji se koristi za testiranje web aplikacija.
  • Jednostavan je i lagan za dizajn.
  • Podržava više okruženja, tj. u bilo kojem slučaju može se postaviti ciljno okruženje.
voda
  • Watir, skraćeni je oblik testiranja web aplikacije u rubyju, alat je otvorenog koda za automatizaciju web preglednika./li>
  • Koristi ruby ​​skriptni jezik, koji je koncizan i jednostavan za korištenje./li>
  • Watir podržava više preglednika na različitim platformama.
Selen
  • Alat otvorenog koda, koji se koristi za funkcionalno testiranje i web aplikacije i aplikacija stolnog računala.
  • Automatizira preglednike i web aplikacije u svrhu testiranja.
  • Omogućuje fleksibilnost prilagodbe automatiziranog testnog slučaja
  • Pruža prednost pisanja testnih skripti, prema zahtjevima, pomoću web upravljačkog programa.
Canoo WebTest
  • Alat otvorenog koda za izvođenje funkcionalnog testiranja web aplikacije.
  • Neovisan o platformi
  • Jednostavno i brzo
  • Lako se proširiti kako bi se zadovoljili rastući i nadolazeći zahtjevi.
Krastavac
  • Cucumber je alat za testiranje otvorenog koda napisan na jeziku Ruby. Ovaj alat najbolje funkcionira za razvoj vođen testiranjem. Koristi se za testiranje mnogih drugih jezika kao što su java, c# i python. Krastavac za testiranje pomoću nekog programiranja.

Koje su prednosti funkcionalnog testiranja?

Prednosti funkcionalnog ispitivanja su:

  • Proizvodi proizvod bez grešaka.
  • Osigurava da je kupac zadovoljan.
  • Osigurava ispunjenje svih zahtjeva.
  • Osigurava ispravan rad svih funkcionalnosti aplikacije/softvera/proizvoda.
  • Osigurava da softver/proizvod radi prema očekivanjima.
  • Osigurava sigurnost i sigurnost.
  • Poboljšava kvalitetu proizvoda.

Primjer: Ovdje dajemo primjer bankarskog softvera. U banci kada se novac prenosi iz banke A u banku B. A banka B ne primi točan iznos, primjenjuje se naknada ili novac nije pretvoren u ispravnu valutu ili je prijenos netočan ili banka A ne prima obavijest o izvodu od banke B da je uplata primljena. Ovi problemi su kritični i mogu se izbjeći pravilnim funkcionalnim testiranjem.

Koji su nedostaci funkcionalnog testiranja?

Nedostaci funkcionalnog ispitivanja su:

  • Funkcionalno testiranje može propustiti kritičnu i logičku grešku u sustavu.
  • Ovo testiranje nije jamstvo da će softver biti aktivan.
  • Mogućnost provođenja redundantnog testiranja velika je u funkcionalnom testiranju.

Zamotati

Ovdje možemo lako zaključiti da je za izgradnju jakih temelja vrhunskog softverskog proizvoda neophodno funkcionalno testiranje. Djeluje kao temelj strukture i ključni je dio svake ispitne rutine.